1 /* { dg-add-options ieee } */ 2 /* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */ 3 4 extern void abort (void); 5 testf(float b)6static inline int __attribute__((always_inline)) testf (float b) 7 { 8 float c = 1.01f * b; 9 10 return __builtin_isinff (c); 11 } 12 test(double b)13static inline int __attribute__((always_inline)) test (double b) 14 { 15 double c = 1.01 * b; 16 17 return __builtin_isinf (c); 18 } 19 testl(long double b)20static inline int __attribute__((always_inline)) testl (long double b) 21 { 22 long double c = 1.01L * b; 23 24 return __builtin_isinfl (c); 25 } 26 main()27int main() 28 { 29 if (testf (__FLT_MAX__) < 1) 30 abort (); 31 32 if (test (__DBL_MAX__) < 1) 33 abort (); 34 35 if (testl (__LDBL_MAX__) < 1) 36 abort (); 37 38 return 0; 39 } 40