Skip several analyzer socket tests on hppa*-*-hpux*
[official-gcc.git] / gcc / testsuite / c-c++-common / Wconversion-pr40752a.c
blob8e3ffae06f62db55f5e4131ca5c9f2e0e2e63e5e
1 /* { dg-do compile } */
2 /* { dg-options "-Wconversion -Warith-conversion" } */
3 #include <limits.h>
4 void foo(char c, char c2)
6 c >>= c2; /* { dg-warning "conversion" } */
7 c >>= 1;
8 c <<= 1; /* { dg-warning "conversion" } */
9 c <<= c2; /* { dg-warning "conversion" } */
10 c += 1; /* { dg-warning "conversion" } */
11 c += c2; /* { dg-warning "conversion" } */
12 c -= 1; /* { dg-warning "conversion" } */
13 c -= c2; /* { dg-warning "conversion" } */
14 c *= 2; /* { dg-warning "conversion" } */
15 c *= c2; /* { dg-warning "conversion" } */
16 c /= 2;
17 /* If char is unsigned we avoid promoting to int. */
18 c /= c2; /* { dg-warning "conversion" "" { target { ! unsigned_char } } } */
19 c %= 2;
20 c %= c2; /* { dg-warning "conversion" "" { target { ! unsigned_char } } } */
21 c = -c2; /* { dg-warning "conversion" } */
22 c = ~c2; /* { dg-warning "conversion" } */
23 c = c2++;
24 c = ++c2;
25 c = c2--;
26 c = --c2;
29 void bar(char c, int c2)
31 c >>= c2; /* { dg-warning "conversion" } */
32 c >>= (int)1;
33 c <<= (int)1; /* { dg-warning "conversion" } */
34 c <<= c2; /* { dg-warning "conversion" } */
35 c += ((int)CHAR_MAX + CHAR_MAX); /* { dg-warning "conversion" } */
36 c += c2; /* { dg-warning "conversion" } */
37 c -= ((int)CHAR_MAX + CHAR_MAX); /* { dg-warning "conversion" } */
38 c -= c2; /* { dg-warning "conversion" } */
39 c *= ((int)CHAR_MAX + CHAR_MAX); /* { dg-warning "conversion" } */
40 c *= c2; /* { dg-warning "conversion" } */
41 c /= ((int)CHAR_MAX + CHAR_MAX); /* { dg-warning "conversion" } */
42 c /= c2; /* { dg-warning "conversion" } */
43 c %= ((int)CHAR_MAX + CHAR_MAX); /* { dg-warning "conversion" } */
44 c %= c2; /* { dg-warning "conversion" } */
45 c = ~c2; /* { dg-warning "conversion" } */
46 c = c2++; /* { dg-warning "conversion" } */
47 c = ++c2; /* { dg-warning "conversion" } */
48 c = c2--; /* { dg-warning "conversion" } */
49 c = --c2; /* { dg-warning "conversion" } */