Link Copied
The following small test-code provides more clarity.
[bash]int FE=1; int main() { #ifdef FE printf("%dn", FE); #endif #if FE printf("%dn", FE); #endif return 1; } [/bash]
#define FE_ALL_EXCEPT \
(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID)
Perhaps these flags are just useful for checking floating-point status flags during runtime arithmetic of floating-point flags when exceptions are raised during function call and floating arithmetic etc.
The use case that you have provided probably does not help too much practically when the program is in execution in memory.
For more complete information about compiler optimizations, see our Optimization Notice.