summaryrefslogtreecommitdiff
path: root/Modules/mathmodule.c
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1997-02-14 22:59:58 +0000
committerGuido van Rossum <guido@python.org>1997-02-14 22:59:58 +0000
commitd87daa1008763c8d1b857b90f33764d6f969e80a (patch)
tree31ec29c799f8e37ba88a8905d2a6064736b54418 /Modules/mathmodule.c
parent73b5fcda7405afb21a32bd6845e768b7b78a0cb1 (diff)
downloadcpython-d87daa1008763c8d1b857b90f33764d6f969e80a.tar.gz
Changes for Lee Busby's SIGFPE patch set.
Two new modules fpectl and fpetest. Surround various and sundry f.p. operations with PyFPE_*_PROTECT macros.
Diffstat (limited to 'Modules/mathmodule.c')
-rw-r--r--Modules/mathmodule.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c
index abf1d5b2db..bb4f1e80bd 100644
--- a/Modules/mathmodule.c
+++ b/Modules/mathmodule.c
@@ -80,7 +80,9 @@ math_1(args, func)
if (! PyArg_Parse(args, "d", &x))
return NULL;
errno = 0;
+ PyFPE_START_PROTECT("in math_1", return 0)
x = (*func)(x);
+ PyFPE_END_PROTECT
CHECK(x);
if (errno != 0)
return math_error();
@@ -97,7 +99,9 @@ math_2(args, func)
if (! PyArg_Parse(args, "(dd)", &x, &y))
return NULL;
errno = 0;
+ PyFPE_START_PROTECT("in math_2", return 0)
x = (*func)(x, y);
+ PyFPE_END_PROTECT
CHECK(x);
if (errno != 0)
return math_error();
@@ -173,7 +177,9 @@ math_ldexp(self, args)
if (! PyArg_Parse(args, "(dd)", &x, &y))
return NULL;
errno = 0;
+ PyFPE_START_PROTECT("ldexp", return 0)
x = ldexp(x, (int)y);
+ PyFPE_END_PROTECT
CHECK(x);
if (errno != 0)
return math_error();