Using gcc 4.3.2-7 on Intel Pentium running Linux Fedora Core 10 with -std=gnu99 of /* DFP TR 24732 == WG14 / N1176, N1312 */ #define __STDC_WANT_DEC_FP__ /* Tell implementation that we want Decimal FP */ #include <float.h> /* DEC_EVAL_METHOD */ #ifndef DEC_EVAL_METHOD #error Missing DEC_EVAL_METHOD #endif int main(void){ return 0; } gets: . /usr/lib/gcc/i386-redhat-linux/4.3.2/include/float.h test3.c:6:2: error: #error Missing DEC_EVAL_METHOD
/* The floating-point expression evaluation method. -1 indeterminate 0 evaluate all operations and constants just to the range and precision of the type 1 evaluate operations and constants of type _Decimal32 and _Decimal64 to the range and precision of the _Decimal64 type, evaluate _Decimal128 operations and constants to the range and precision of the _Decimal128 type; 2 evaluate all operations and constants to the range and precision of the _Decimal128 type. */ #undef DEC_EVAL_METHOD #define DEC_EVAL_METHOD __DEC_EVAL_METHOD__ It is there on the trunk.
Fixed by: http://gcc.gnu.org/ml/gcc-patches/2008-09/msg00944.html