This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug libc/6981] __STDC_IEC_559__ should not be defined unconditionally
- From: "vincent-srcware at vinc17 dot net" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Sun, 09 Feb 2014 18:25:31 +0000
- Subject: [Bug libc/6981] __STDC_IEC_559__ should not be defined unconditionally
- Auto-submitted: auto-generated
- References: <bug-6981-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=6981
--- Comment #15 from Vincent LefÃvre <vincent-srcware at vinc17 dot net> ---
F.7 of C99 says: "The floating-point environment defined in <fenv.h> includes
the IEC 60559 floating-point exception status flags and directed-rounding
control modes. It includes also IEC 60559 dynamic rounding precision and trap
enablement modes, if the implementation supports them.312)
312) This specification does not require dynamic rounding precision nor trap
enablement modes."
I suspect that F.7 has been added with x87 hardware in mind, and more generally
hardware with dynamic rounding precision (where FLT_EVAL_METHOD is typically 1
or 2), and various modes are expected to be supported by the C implementation.
If the implementation (as an extension) or an external library provides a way
to set this dynamic rounding precision, then Â4.3 of IEEE 754 can be fulfilled
without the alternate functions from the new TS. So, from this point of view,
having FLT_EVAL_METHOD set to 1 or 2 can be OK, as long as the implementation
supports the various rounding precisions.
--
You are receiving this mail because:
You are on the CC list for the bug.