2 // { dg-options "-Wconversion" }
4 // Copyright (C) 2000 Free Software Foundation, Inc.
5 // Contributed by Nathan Sidwell 6 Mar 2000 <nathan@codesourcery.com>
7 // initialization to 'int' from to 'double' We expect consistent warnings
8 // whenever a float is implicitly truncated to int, make sure references
9 // don't confuse us, as Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> found out.
14 X (int const &, int const &);
17 void foo (int const &);
18 void wibble (int const &);
19 void wibble (int const &, int const &);
20 void punk (int const & = 3.5f); // { dg-warning "" } in passing
22 void rock (int const &, int const & = 3.5f); // { dg-warning "" } in passing
26 X x2(3.5f); // { dg-warning "" } float to int
27 X x4(1, 3.5f); // { dg-warning "" } float to int
28 X x6(3.5f, 1); // { dg-warning "" } float to int
30 X y2 = 3.5f; // { dg-warning "" } float to int
32 int j2 (3.5f); // { dg-warning "" } float to int
34 int k2 = 3.5f; // { dg-warning "" } float to int
36 j2 = 3.5f; // { dg-warning "" } float to int
38 foo (3.5f); // { dg-warning "" } float to int
40 wibble (3.5f); // { dg-warning "" } float to int
41 wibble (1, 3.5f); // { dg-warning "" } float to int
42 wibble (3.5f, 1); // { dg-warning "" } float to int
44 punk (); // { dg-warning "" } float to int
45 rock (1); // { dg-warning "" } float to int
48 // and make sure we really know when something's unsigned