diff options
author | Stefan Behnel <stefan_ml@behnel.de> | 2019-02-01 15:47:59 +0100 |
---|---|---|
committer | Stefan Behnel <stefan_ml@behnel.de> | 2019-02-01 15:47:59 +0100 |
commit | 272efcf67762e00fd6539ead1ff6e04319266f7e (patch) | |
tree | 9c6a7f08a42067ea8b95522458726185deb55bd8 | |
parent | c292d6cb15d1d706772831fb0c5a3b007709827d (diff) | |
download | cython-272efcf67762e00fd6539ead1ff6e04319266f7e.tar.gz |
Fix exception messages for float division by zero, as well as their tests (which were wrong in Py2.6).0.29.4
-rw-r--r-- | Cython/Utility/Optimize.c | 2 | ||||
-rw-r--r-- | tests/run/float_division.pyx | 42 | ||||
-rw-r--r-- | tests/run/modop.pyx | 4 |
3 files changed, 24 insertions, 24 deletions
diff --git a/Cython/Utility/Optimize.c b/Cython/Utility/Optimize.c index 8030befb9..04b3ec75a 100644 --- a/Cython/Utility/Optimize.c +++ b/Cython/Utility/Optimize.c @@ -1086,7 +1086,7 @@ c_op = { {{if order == 'CObj' and c_op in '%/'}} #define {{zerodiv_check('operand')}} if (unlikely(zerodivision_check && ((operand) == 0))) { \ - PyErr_SetString(PyExc_ZeroDivisionError, "integer division{{if op == 'Remainder'}} or modulo{{endif}} by zero"); \ + PyErr_SetString(PyExc_ZeroDivisionError, "float division{{if op == 'Remainder'}} or modulo{{endif}} by zero"); \ return NULL; \ } {{endif}} diff --git a/tests/run/float_division.pyx b/tests/run/float_division.pyx index 2c2630f10..69a8f1c3e 100644 --- a/tests/run/float_division.pyx +++ b/tests/run/float_division.pyx @@ -30,31 +30,31 @@ def div_by_0(x): """ >>> div_by_0(0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_by_0(0.0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_by_0(1) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_by_0(1.0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> float('inf') / 0.0 # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_by_0(float('inf')) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_by_0(float('-inf')) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> float('nan') / 0.0 # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_by_0(float('nan')) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... """ return x / 0.0 @@ -77,10 +77,10 @@ def div_1_by(x): nan >>> div_1_by(0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_1_by(0.0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... """ return 1.0 / x @@ -157,10 +157,10 @@ def div_neg_2_by(x): nan >>> div_neg_2_by(0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_neg_2_by(0.0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... """ return (-2.0) / x @@ -195,10 +195,10 @@ def div_nan_by(x): nan >>> div_nan_by(0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_nan_by(0.0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... """ return float("nan") / x @@ -235,13 +235,13 @@ def div_inf_by(x): nan >>> float("inf") / 0.0 # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_inf_by(0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_inf_by(0.0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... """ return float("inf") / x @@ -258,12 +258,12 @@ def div_neg_inf_by(x): inf >>> float("-inf") / 0.0 # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_neg_inf_by(0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... >>> div_neg_inf_by(0.0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division by zero + ZeroDivisionError: float division... """ return float("-inf") / x diff --git a/tests/run/modop.pyx b/tests/run/modop.pyx index 1402cbb54..c7b4c7d57 100644 --- a/tests/run/modop.pyx +++ b/tests/run/modop.pyx @@ -9,7 +9,7 @@ def modobj(obj2, obj3): '5' >>> modobj(1, 0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division...by zero + ZeroDivisionError: integer division... """ obj1 = obj2 % obj3 return obj1 @@ -19,7 +19,7 @@ def mod_10_obj(int2): """ >>> mod_10_obj(0) # doctest: +ELLIPSIS Traceback (most recent call last): - ZeroDivisionError: ...division...by zero + ZeroDivisionError: integer division... >>> mod_10_obj(3) 1 """ |