1 /* Test for diagnostics for Wconversion between floating-point and
2 integers. C++ equivalent of
3 gcc/testsuite/gcc.dg/Wconversion-real-integer.c */
6 /* { dg-options "-Wconversion" } */
10 void fsi (signed int x);
11 void fui (unsigned int x);
12 void ffloat (float x);
13 void fdouble (double x);
27 fsi (3.1f); /* { dg-warning "conversion" } */
28 si = 3.1f; /* { dg-warning "conversion" } */
29 fsi (3.1); /* { dg-warning "conversion" } */
30 si = 3.1; /* { dg-warning "conversion" } */
31 fsi (d); /* { dg-warning "conversion" } */
32 si = d; /* { dg-warning "conversion" } */
33 fui (-1.0); /* { dg-warning "overflow" } */
34 ui = -1.0; /* { dg-warning "overflow" } */
35 ffloat (INT_MAX); /* { dg-warning "conversion" } */
36 vfloat = INT_MAX; /* { dg-warning "conversion" } */
37 ffloat (16777217); /* { dg-warning "conversion" } */
38 vfloat = 16777217; /* { dg-warning "conversion" } */
39 ffloat (si); /* { dg-warning "conversion" } */
40 vfloat = si; /* { dg-warning "conversion" } */
41 ffloat (ui); /* { dg-warning "conversion" } */
42 vfloat = ui; /* { dg-warning "conversion" } */