1 /* Test INFINITY macro. Test when infinities supported. */ 2 /* { dg-do run } */ 3 /* { dg-options "-std=c2x -pedantic-errors" } */ 4 /* { dg-add-options ieee } */ 5 /* { dg-require-effective-target inff } */ 6 7 #include <float.h> 8 9 #ifndef INFINITY 10 #error "INFINITY undefined" 11 #endif 12 13 volatile float f = INFINITY; 14 15 extern void abort (void); 16 extern void exit (int); 17 18 int main(void)19main (void) 20 { 21 (void) _Generic (INFINITY, float : 0); 22 if (!(INFINITY > FLT_MAX)) 23 abort (); 24 if (!(f > FLT_MAX)) 25 abort (); 26 exit (0); 27 } 28