modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/conv.c (about) 1 double 2 u2d (unsigned int u) 3 { 4 return u; 5 } 6 7 double 8 i2d (signed int i) 9 { 10 return i; 11 } 12 13 unsigned int 14 d2u (double d) 15 { 16 return d; 17 } 18 19 signed int 20 d2i (double d) 21 { 22 return d; 23 } 24 25 main () 26 { 27 printf ("%lf, %lf, %lf\n", u2d (~0), u2d (1 << 31), u2d (1)); 28 printf ("%lf, %lf, %lf\n", i2d (~0), i2d (1 << 31), i2d (1)); 29 30 printf ("%u, %u, %u\n", d2u (u2d (~0)), d2u (u2d (1 << 31)), d2u (u2d (1))); 31 printf ("%d, %d, %d\n", d2i (i2d (~0)), d2i (i2d (1 << 31)), d2i (i2d (1))); 32 }