1 2#if(__SIZEOF_DOUBLE__==8) 3double d = 1024.0 - 1.0 / 32768.0; 4#else 5double d = 1024.0 - 1.0 / 16384.0; 6#endif 7 8extern double floor(double); 9extern float floorf(float); 10extern void abort(); 11 12int main() { 13 14 double df = floor(d); 15 float f1 = (float)floor(d); 16 17 if ((int)df != 1023 || (int)f1 != 1023) 18 abort (); 19 20 return 0; 21} 22