[Python-Dev] checking "errno" for math operaton is safe to determine the error status?
Xin, Peixing
Peixing.Xin at windriver.com
Thu Apr 11 05:45:00 EDT 2019
Hi, Math experts:
Looking at the codes below, for many math operations, CPython is checking errno to determine the error status even though the math function returns normal value back. Is it a safe solution? From the description here http://man7.org/linux/man-pages/man3/errno.3.html and https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=87152351, it looks apis probably set the errno when normal result is returned. Or being a side effect by calling other APIs in the implementation. In this situation, CPython's math operation might raise exceptions however in fact the result is correct.
https://github.com/python/cpython/blob/master/Modules/mathmodule.c#L956
https://github.com/python/cpython/blob/master/Modules/mathmodule.c#L864
Thanks,
Peixing
More information about the Python-Dev
mailing list