mirror of
https://github.com/python/cpython.git
synced 2025-12-31 12:33:28 +00:00
gh-119057: Use better error messages for zero division (#119066)
This commit is contained in:
parent
153b118b78
commit
1d4c2e4a87
11 changed files with 32 additions and 20 deletions
|
|
@ -623,7 +623,7 @@ float_div(PyObject *v, PyObject *w)
|
|||
CONVERT_TO_DOUBLE(w, b);
|
||||
if (b == 0.0) {
|
||||
PyErr_SetString(PyExc_ZeroDivisionError,
|
||||
"float division by zero");
|
||||
"division by zero");
|
||||
return NULL;
|
||||
}
|
||||
a = a / b;
|
||||
|
|
@ -639,7 +639,7 @@ float_rem(PyObject *v, PyObject *w)
|
|||
CONVERT_TO_DOUBLE(w, wx);
|
||||
if (wx == 0.0) {
|
||||
PyErr_SetString(PyExc_ZeroDivisionError,
|
||||
"float modulo by zero");
|
||||
"division by zero");
|
||||
return NULL;
|
||||
}
|
||||
mod = fmod(vx, wx);
|
||||
|
|
@ -704,7 +704,7 @@ float_divmod(PyObject *v, PyObject *w)
|
|||
CONVERT_TO_DOUBLE(v, vx);
|
||||
CONVERT_TO_DOUBLE(w, wx);
|
||||
if (wx == 0.0) {
|
||||
PyErr_SetString(PyExc_ZeroDivisionError, "float divmod()");
|
||||
PyErr_SetString(PyExc_ZeroDivisionError, "division by zero");
|
||||
return NULL;
|
||||
}
|
||||
_float_div_mod(vx, wx, &floordiv, &mod);
|
||||
|
|
@ -719,7 +719,7 @@ float_floor_div(PyObject *v, PyObject *w)
|
|||
CONVERT_TO_DOUBLE(v, vx);
|
||||
CONVERT_TO_DOUBLE(w, wx);
|
||||
if (wx == 0.0) {
|
||||
PyErr_SetString(PyExc_ZeroDivisionError, "float floor division by zero");
|
||||
PyErr_SetString(PyExc_ZeroDivisionError, "division by zero");
|
||||
return NULL;
|
||||
}
|
||||
_float_div_mod(vx, wx, &floordiv, &mod);
|
||||
|
|
@ -788,8 +788,7 @@ float_pow(PyObject *v, PyObject *w, PyObject *z)
|
|||
int iw_is_odd = DOUBLE_IS_ODD_INTEGER(iw);
|
||||
if (iw < 0.0) {
|
||||
PyErr_SetString(PyExc_ZeroDivisionError,
|
||||
"0.0 cannot be raised to a "
|
||||
"negative power");
|
||||
"zero to a negative power");
|
||||
return NULL;
|
||||
}
|
||||
/* use correct sign if iw is odd */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue