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)19 main (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