projects
/
libc-test
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f58c4e0
)
fenv: under/overflow may raise inexact too
author
Szabolcs Nagy
<nsz@port70.net>
Fri, 10 Apr 2015 18:52:24 +0000
(18:52 +0000)
committer
Szabolcs Nagy
<nsz@port70.net>
Fri, 10 Apr 2015 18:52:24 +0000
(18:52 +0000)
src/math/fenv.c
patch
|
blob
|
history
diff --git
a/src/math/fenv.c
b/src/math/fenv.c
index
91b6378
..
178b32e
100644
(file)
--- a/
src/math/fenv.c
+++ b/
src/math/fenv.c
@@
-53,9
+53,18
@@
static void test_except()
if (r)
error("feraiseexcept(%s) returned %d\n", te[i].name, r);
r = fetestexcept(FE_ALL_EXCEPT);
if (r)
error("feraiseexcept(%s) returned %d\n", te[i].name, r);
r = fetestexcept(FE_ALL_EXCEPT);
- if (r != te[i].i)
+ if (r != te[i].i) {
+#if defined FE_OVERFLOW && defined FE_INEXACT
+ if (te[i].i == FE_OVERFLOW && r == FE_OVERFLOW|FE_INEXACT)
+ continue;
+#endif
+#if defined FE_UNDERFLOW && defined FE_INEXACT
+ if (te[i].i == FE_UNDERFLOW && r == FE_UNDERFLOW|FE_INEXACT)
+ continue;
+#endif
error("feraiseexcept(%s) want %d got %d\n",
te[i].name, te[i].i, r);
error("feraiseexcept(%s) want %d got %d\n",
te[i].name, te[i].i, r);
+ }
}
r = feraiseexcept(FE_ALL_EXCEPT);
}
r = feraiseexcept(FE_ALL_EXCEPT);