https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122082
kargls at comcast dot net changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |kargls at comcast dot net
--- Comment #1 from kargls at comcast dot net ---
> assert( FE_OVERFLOW|FE_INEXACT == flags );
What are you testing here? If the code is changed to
if (FE_INEXACT & flags) printf("inexact\n");
if (FE_OVERFLOW & flags) printf("overflow\n") ;
if (FE_UNDERFLOW & flags) printf("underflow\n");
if (FE_DIVBYZERO & flags) printf("divide-by-zero\n") ;
With clang,
% cc -o z a.c -lm && ./z
inexact
overflow
Assertion failed: ((0.f == cimagf(fc26))), function main, file a.c, line 31.
Abort (core dumped)
With top-of-tree
~/work/x/bin/gcc -o z a.c -lm && ./z
inexact
overflow
Assertion failed: ((0.f == cimagf(fc26))), function main, file a.c, line 31.
Abort (core dumped)