If the denominator to a division or modulo operation is zero it would result in a fatal error.
Why is this an issue?
This is an issue because dividing by zero is a forbidden operation which leads to a fatal error.
What is the potential impact?
This issue can lead your program to an unexpected halt with all the inconveniences it entails.
How to fix it
Make sure that zero never reaches the denominator.
Code examples
Noncompliant code example
def non_compliant():
z = 0
if (unknown()):
# ...
z = 4
else:
# ...
z = 1 / z
Compliant solution
def compliant():
z = 0
if (unknown()):
# ...
z = 4
else:
# ...
z = 1
z = 1 / z
How does this work?
By ensuring that for all the paths that can define the variable z, when none assigns it zero, we are sure that the issue is fixed.