1 /* { dg-do compile } */
2 /* { dg-options "-Wunused -W" } */
3
4 int
f1(unsigned int x)5 f1 (unsigned int x)
6 {
7 int c = ({ union { unsigned int a; int b; } u; u.a = x; u.b; });
8 return c;
9 }
10
11 void
f2(void)12 f2 (void)
13 {
14 struct S { int i; } a;
15 int b[1];
16 a.i = 1;
17 a.i; /* { dg-warning "no effect" } */
18 b[0] = 1;
19 b[0]; /* { dg-warning "no effect" } */
20 }
21
22 void
f3(void)23 f3 (void)
24 {
25 struct S { int i; } a; /* { dg-warning "set but not used" } */
26 int b[1]; /* { dg-warning "set but not used" } */
27 a.i = 1;
28 b[0] = 1;
29 }
30