Lines Matching +full:enum +full:- +full:conversion
1 // RUN: %clang_cc1 -fsyntax-only -verify -Wconversion \
2 // RUN: -nostdsysteminc -nobuiltininc -isystem %S/Inputs \
3 // RUN: -triple x86_64-apple-darwin %s -Wno-unreachable-code
5 #include <conversion.h>
11 c = s; // expected-warning {{implicit conversion loses integer precision}} in test0()
12 c = i; // expected-warning {{implicit conversion loses integer precision}} in test0()
13 c = l; // expected-warning {{implicit conversion loses integer precision}} in test0()
16 s = i; // expected-warning {{implicit conversion loses integer precision}} in test0()
17 s = l; // expected-warning {{implicit conversion loses integer precision}} in test0()
21 i = l; // expected-warning {{implicit conversion loses integer precision}} in test0()
45 c = (short) BIG; // expected-warning {{implicit conversion from 'short' to 'char' changes value}} in test0()
46 c = (int) BIG; // expected-warning {{implicit conversion from 'int' to 'char' changes value}} in test0()
47 c = (long) BIG; // expected-warning {{implicit conversion from 'long' to 'char' changes value}} in test0()
50 s = (int) BIG; // expected-warning {{implicit conversion from 'int' to 'short' changes value}} in test0()
51 s = (long) BIG; // expected-warning {{implicit conversion from 'long' to 'short' changes value}} in test0()
55 i = (long) BIG; // expected-warning {{implicit conversion from 'long' to 'int' changes value}} in test0()
63 return (long long) ll; // expected-warning {{implicit conversion loses integer precision}} in test1()
66 return (long) ll; // expected-warning {{implicit conversion loses integer precision}} in test1_a()
69 return (int) ll; // expected-warning {{implicit conversion loses integer precision}} in test1_b()
72 return (short) ll; // expected-warning {{implicit conversion loses integer precision}} in test1_c()
78 …return (long long) BIG; // expected-warning {{implicit conversion from 'long long' to 'char' chang… in test1_e()
81 return (long) BIG; // expected-warning {{implicit conversion from 'long' to 'char' changes value}} in test1_f()
84 return (int) BIG; // expected-warning {{implicit conversion from 'int' to 'char' changes value}} in test1_g()
87 …return (short) BIG; // expected-warning {{implicit conversion from 'short' to 'char' changes value… in test1_h()
94 return (long long) ll; // expected-warning {{implicit conversion loses integer precision}} in test2()
97 return (long) ll; // expected-warning {{implicit conversion loses integer precision}} in test2_a()
100 return (int) ll; // expected-warning {{implicit conversion loses integer precision}} in test2_b()
109 …return (long long) BIG; // expected-warning {{implicit conversion from 'long long' to 'short' cha… in test2_e()
112 …return (long) BIG; // expected-warning {{implicit conversion from 'long' to 'short' changes value… in test2_f()
115 return (int) BIG; // expected-warning {{implicit conversion from 'int' to 'short' changes value}} in test2_g()
125 return (long long) ll; // expected-warning {{implicit conversion loses integer precision}} in test3()
128 return (long) ll; // expected-warning {{implicit conversion loses integer precision}} in test3_b()
140 …return (long long) BIG; // expected-warning {{implicit conversion from 'long long' to 'int' chang… in test3_f()
143 return (long) BIG; // expected-warning {{implicit conversion from 'long' to 'int' changes value}} in test3_g()
220 takes_char(v); // expected-warning {{implicit conversion loses integer precision}} in test7()
231 takes_char(v); // expected-warning {{implicit conversion loses integer precision}} in test8()
232 takes_short(v); // expected-warning {{implicit conversion loses integer precision}} in test8()
242 takes_char(v); // expected-warning {{implicit conversion loses integer precision}} in test9()
243 takes_short(v); // expected-warning {{implicit conversion loses integer precision}} in test9()
244 takes_int(v); // expected-warning {{implicit conversion loses integer precision}} in test9()
253 takes_char(v); // expected-warning {{implicit conversion loses integer precision}} in test10()
254 takes_short(v); // expected-warning {{implicit conversion loses integer precision}} in test10()
255 takes_int(v); // expected-warning {{implicit conversion loses integer precision}} in test10()
264 …takes_char(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test11()
265 …takes_short(v); // expected-warning {{implicit conversion turns floating-point number into integer… in test11()
266 takes_int(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test11()
267 …takes_long(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test11()
268 …takes_longlong(v); // expected-warning {{implicit conversion turns floating-point number into inte… in test11()
275 …takes_char(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test12()
276 …takes_short(v); // expected-warning {{implicit conversion turns floating-point number into integer… in test12()
277 takes_int(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test12()
278 …takes_long(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test12()
279 …takes_longlong(v); // expected-warning {{implicit conversion turns floating-point number into inte… in test12()
280 takes_float(v); // expected-warning {{implicit conversion loses floating-point precision}} in test12()
286 …takes_char(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test13()
287 …takes_short(v); // expected-warning {{implicit conversion turns floating-point number into integer… in test13()
288 takes_int(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test13()
289 …takes_long(v); // expected-warning {{implicit conversion turns floating-point number into integer}} in test13()
290 …takes_longlong(v); // expected-warning {{implicit conversion turns floating-point number into inte… in test13()
291 takes_float(v); // expected-warning {{implicit conversion loses floating-point precision}} in test13()
292 takes_double(v); // expected-warning {{implicit conversion loses floating-point precision}} in test13()
306 c = (short) c + 1 + c * 2; // expected-warning {{implicit conversion loses integer precision}} in test15()
312 …int a = (unsigned long) &test16_external; // expected-warning {{implicit conversion loses integer … in test16()
326 x = U.c; // expected-warning {{implicit conversion loses integer precision}} in test17()
354 char s = LONG_MAX; // expected-warning {{implicit conversion from 'long' to 'char' changes value}} in test_7631400()
357 // <rdar://problem/7676608>: assertion for compound operators with non-integral RHS
367 const int i = -1; in test_7904686()
368 unsigned u1 = i; // expected-warning {{implicit conversion changes signedness}} in test_7904686()
369 u1 = i; // expected-warning {{implicit conversion changes signedness}} in test_7904686()
371 unsigned u2 = -1; // expected-warning {{implicit conversion changes signedness}} in test_7904686()
372 u2 = -1; // expected-warning {{implicit conversion changes signedness}} in test_7904686()
385 USER_SETBIT(bitset, 0); // expected-warning 2 {{implicit conversion changes signedness}} in test_8232669()
389 enum E8559831a { E8559831a_val };
390 enum E8559831b { E8559831b_val };
391 typedef enum { E8559831c_val } E8559831c;
392 enum { E8559831d_val } value_d;
394 void test_8559831_a(enum E8559831a value);
395 void test_8559831(enum E8559831b value_a, E8559831c value_c) { in test_8559831()
396 …_a(value_a); // expected-warning{{implicit conversion from enumeration type 'enum E8559831b' to di… in test_8559831()
397 …enum E8559831a a1 = value_a; // expected-warning{{implicit conversion from enumeration type 'enum … in test_8559831()
398 …1 = value_a; // expected-warning{{implicit conversion from enumeration type 'enum E8559831b' to di… in test_8559831()
400 …59831b_val); // expected-warning{{implicit conversion from enumeration type 'enum E8559831b' to di… in test_8559831()
401 …enum E8559831a a1a = E8559831b_val; // expected-warning{{implicit conversion from enumeration type… in test_8559831()
402 …559831b_val; // expected-warning{{implicit conversion from enumeration type 'enum E8559831b' to di… in test_8559831()
404 …831_a(value_c); // expected-warning{{implicit conversion from enumeration type 'E8559831c' to diff… in test_8559831()
405 …enum E8559831a a2 = value_c; // expected-warning{{implicit conversion from enumeration type 'E8559… in test_8559831()
406 …a2 = value_c; // expected-warning{{implicit conversion from enumeration type 'E8559831c' to differ… in test_8559831()
409 enum E8559831a a3 = value_d; in test_8559831()
414 si = sl % sl; // expected-warning {{implicit conversion loses integer precision: 'long' to 'int'}} in test26()
418 si = sl / si; // expected-warning {{implicit conversion loses integer precision: 'long' to 'int'}} in test26()
429 …ushort16 crCbScale = pairedConstants.s4; // expected-warning {{implicit conversion loses integer p… in test27()
430 …ushort16 brBias = pairedConstants.s6; // expected-warning {{implicit conversion loses integer prec… in test27()