OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.dg/] [Wparentheses-11.c] - Blame information for rev 689

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 689 jeremybenn
/* PR 7543. Test operation of -Wparentheses.  Precedence warnings.
2
   !a | b and !a & b. */
3
/* { dg-do compile } */
4
/* { dg-options "-Wparentheses" } */
5
 
6
int foo (int);
7
 
8
int
9
bar (int a, int b, int c)
10
{
11
  foo (!a & b); /* { dg-warning "parentheses" "correct warning" } */
12
  foo (!a & (b < c));
13
  foo (!a & (b > c));
14
  foo (!a & (b == c));
15
  foo (!a & (b != c));
16
  foo (!a & (b <= c));
17
  foo (!a & (b >= c));
18
  foo (!a & (b && c));
19
  foo (!a & (b || c));
20
  foo (!a & !b);
21
  foo (!(a & b));
22
  foo ((!a) & b);
23
  foo (!a & 2); /* { dg-warning "parentheses" "correct warning" } */
24
  foo (!a & (2 < c));
25
  foo (!a & (2 > c));
26
  foo (!a & (2 == c));
27
  foo (!a & (2 != c));
28
  foo (!a & (2 <= c));
29
  foo (!a & (2 >= c));
30
  foo (!a & (2 && c));
31
  foo (!a & (2 || c));
32
  foo (!a & !2);
33
  foo (!(a & 2));
34
  foo ((!a) & 2);
35
  foo (!1 & 2); /* { dg-warning "parentheses" "correct warning" } */
36
  foo (!1 & (2 < c));
37
  foo (!1 & (2 > c));
38
  foo (!1 & (2 == c));
39
  foo (!1 & (2 != c));
40
  foo (!1 & (2 <= c));
41
  foo (!1 & (2 >= c));
42
  foo (!1 & (2 && c));
43
  foo (!1 & (2 || c));
44
  foo (!1 & !2);
45
  foo (!(1 & 2));
46
 
47
  foo (!a | b); /* { dg-warning "parentheses" "correct warning" } */
48
  foo (!a | (b < c));
49
  foo (!a | (b > c));
50
  foo (!a | (b == c));
51
  foo (!a | (b != c));
52
  foo (!a | (b <= c));
53
  foo (!a | (b >= c));
54
  foo (!a | (b && c));
55
  foo (!a | (b || c));
56
  foo (!a | !b);
57
  foo (!(a | b));
58
  foo ((!a) | b);
59
  foo (!a | 2); /* { dg-warning "parentheses" "correct warning" } */
60
  foo (!a | (2 < c));
61
  foo (!a | (2 > c));
62
  foo (!a | (2 == c));
63
  foo (!a | (2 != c));
64
  foo (!a | (2 <= c));
65
  foo (!a | (2 >= c));
66
  foo (!a | (2 && c));
67
  foo (!a | (2 || c));
68
  foo (!a | !2);
69
  foo (!(a | 2));
70
  foo ((!a) | 2);
71
  foo (!1 | 2); /* { dg-warning "parentheses" "correct warning" } */
72
  foo (!1 | (2 < c));
73
  foo (!1 | (2 > c));
74
  foo (!1 | (2 == c));
75
  foo (!1 | (2 != c));
76
  foo (!1 | (2 <= c));
77
  foo (!1 | (2 >= c));
78
  foo (!1 | (2 && c));
79
  foo (!1 | (2 || c));
80
  foo (!1 | !2);
81
  foo (!(1 | 2));
82
  foo ((!1) | 2);
83
 
84
  foo (b & !a); /* { dg-bogus "parentheses" "bogus warning" } */
85
  foo ((b < c) & !a);
86
  foo ((b > c) & !a);
87
  foo ((b == c) & !a);
88
  foo ((b != c) & !a);
89
  foo ((b <= c) & !a);
90
  foo ((b >= c) & !a);
91
  foo ((b && c) & !a);
92
  foo ((b || c) & !a);
93
  foo (!b & !a);
94
  foo (!(b & a));
95
  foo (b & (!a));
96
  foo (2 & !a); /* { dg-bogus "parentheses" "correct warning" } */
97
  foo ((2 < c) & !a);
98
  foo ((2 > c) & !a);
99
  foo ((2 == c) & !a);
100
  foo ((2 != c) & !a);
101
  foo ((2 <= c) & !a);
102
  foo ((2 >= c) & !a);
103
  foo ((2 && c) & !a);
104
  foo ((2 || c) & !a);
105
  foo (!2 & !a);
106
  foo (!(2 & a));
107
  foo (2 & (!a));
108
  foo (2 & !1); /* { dg-bogus "parentheses" "correct warning" } */
109
  foo ((2 < c) & !1);
110
  foo ((2 > c) & !1);
111
  foo ((2 == c) & !1);
112
  foo ((2 != c) & !1);
113
  foo ((2 <= c) & !1);
114
  foo ((2 >= c) & !1);
115
  foo ((2 && c) & !1);
116
  foo ((2 || c) & !1);
117
  foo (!2 & !1);
118
  foo (!(2 & 1));
119
 
120
  foo (b | !a); /* { dg-bogus "parentheses" "correct warning" } */
121
  foo ((b < c) | !a);
122
  foo ((b > c) | !a);
123
  foo ((b == c) | !a);
124
  foo ((b != c) | !a);
125
  foo ((b <= c) | !a);
126
  foo ((b >= c) | !a);
127
  foo ((b && c) | !a);
128
  foo ((b || c) | !a);
129
  foo (!b | !a);
130
  foo (!(b | a));
131
  foo (b | (!a));
132
  foo (2 | !a); /* { dg-bogus "parentheses" "correct warning" } */
133
  foo ((2 < c) | !a);
134
  foo ((2 > c) | !a);
135
  foo ((2 == c) | !a);
136
  foo ((2 != c) | !a);
137
  foo ((2 <= c) | !a);
138
  foo ((2 >= c) | !a);
139
  foo ((2 && c) | !a);
140
  foo ((2 || c) | !a);
141
  foo (!2 | !a);
142
  foo (!(2 | a));
143
  foo (2 | (!a));
144
  foo (2 | !1); /* { dg-bogus "parentheses" "correct warning" } */
145
  foo ((2 < c) | !1);
146
  foo ((2 > c) | !1);
147
  foo ((2 == c) | !1);
148
  foo ((2 != c) | !1);
149
  foo ((2 <= c) | !1);
150
  foo ((2 >= c) | !1);
151
  foo ((2 && c) | !1);
152
  foo ((2 || c) | !1);
153
  foo (!2 | !1);
154
  foo (!(2 | 1));
155
  foo (2 | (!1));
156
}
157
 
158
int
159
baz (int a, int b, int c)
160
{
161
  foo (!a & (b << c));/* { dg-warning "parentheses" "correct warning" } */
162
  foo (!a & (b >> c));/* { dg-warning "parentheses" "correct warning" } */
163
  foo (!a & (b + c)); /* { dg-warning "parentheses" "correct warning" } */
164
  foo (!a & (b - c)); /* { dg-warning "parentheses" "correct warning" } */
165
  foo (!a & (b = c)); /* { dg-warning "parentheses" "correct warning" } */
166
  foo (!a & ~b);      /* { dg-warning "parentheses" "correct warning" } */
167
  foo (!a & (b & c)); /* { dg-warning "parentheses" "correct warning" } */
168
  foo (!a & (b | c)); /* { dg-warning "parentheses" "correct warning" } */
169
  foo (!a & 2);       /* { dg-warning "parentheses" "correct warning" } */
170
  foo (!a & (2 << c));/* { dg-warning "parentheses" "correct warning" } */
171
  foo (!a & (2 >> c));/* { dg-warning "parentheses" "correct warning" } */
172
  foo (!a & (2 + c)); /* { dg-warning "parentheses" "correct warning" } */
173
  foo (!a & (2 - c)); /* { dg-warning "parentheses" "correct warning" } */
174
  foo (!a & (c = 2)); /* { dg-warning "parentheses" "correct warning" } */
175
  foo (!a & ~2);      /* { dg-warning "parentheses" "correct warning" } */
176
  foo (!a & (2 & c)); /* { dg-warning "parentheses" "correct warning" } */
177
  foo (!a & (2 | c)); /* { dg-warning "parentheses" "correct warning" } */
178
  foo (!1 & (2 << c));/* { dg-warning "parentheses" "correct warning" } */
179
  foo (!1 & (2 >> c));/* { dg-warning "parentheses" "correct warning" } */
180
  foo (!1 & (2 + c)); /* { dg-warning "parentheses" "correct warning" } */
181
  foo (!1 & (2 - c)); /* { dg-warning "parentheses" "correct warning" } */
182
  foo (!1 & (c = 2)); /* { dg-warning "parentheses" "correct warning" } */
183
  foo (!1 & ~2);      /* { dg-warning "parentheses" "correct warning" } */
184
  foo (!1 & (2 & c)); /* { dg-warning "parentheses" "correct warning" } */
185
  foo (!1 & (2 | c)); /* { dg-warning "parentheses" "correct warning" } */
186
  foo (!a | (b << c));/* { dg-warning "parentheses" "correct warning" } */
187
  foo (!a | (b >> c));/* { dg-warning "parentheses" "correct warning" } */
188
  foo (!a | (b + c)); /* { dg-warning "parentheses" "correct warning" } */
189
  foo (!a | (b - c)); /* { dg-warning "parentheses" "correct warning" } */
190
  foo (!a | (b = c)); /* { dg-warning "parentheses" "correct warning" } */
191
  foo (!a | ~b);      /* { dg-warning "parentheses" "correct warning" } */
192
  foo (!a | (b & c)); /* { dg-warning "parentheses" "correct warning" } */
193
  foo (!a | (b | c)); /* { dg-warning "parentheses" "correct warning" } */
194
  foo (!a | (2 << c));/* { dg-warning "parentheses" "correct warning" } */
195
  foo (!a | (2 >> c));/* { dg-warning "parentheses" "correct warning" } */
196
  foo (!a | (2 + c)); /* { dg-warning "parentheses" "correct warning" } */
197
  foo (!a | (2 - c)); /* { dg-warning "parentheses" "correct warning" } */
198
  foo (!a | (c = 2)); /* { dg-warning "parentheses" "correct warning" } */
199
  foo (!a | ~2);      /* { dg-warning "parentheses" "correct warning" } */
200
  foo (!a | (2 & c)); /* { dg-warning "parentheses" "correct warning" } */
201
  foo (!a | (2 | c)); /* { dg-warning "parentheses" "correct warning" } */
202
  foo (!1 | (2 << c));/* { dg-warning "parentheses" "correct warning" } */
203
  foo (!1 | (2 >> c));/* { dg-warning "parentheses" "correct warning" } */
204
  foo (!1 | (2 + c)); /* { dg-warning "parentheses" "correct warning" } */
205
  foo (!1 | (2 - c)); /* { dg-warning "parentheses" "correct warning" } */
206
  foo (!1 | (c = 2)); /* { dg-warning "parentheses" "correct warning" } */
207
  foo (!1 | ~2);      /* { dg-warning "parentheses" "correct warning" } */
208
  foo (!1 | (2 & c)); /* { dg-warning "parentheses" "correct warning" } */
209
  foo (!1 | (2 | c)); /* { dg-warning "parentheses" "correct warning" } */
210
  foo ((b << c) & !a);
211
  foo ((b >> c) & !a);
212
  foo ((b + c) & !a);
213
  foo ((b - c) & !a);
214
  foo ((b = c) & !a);
215
  foo (~b & !a);
216
  foo ((b & c) & !a);
217
  foo ((b | c) & !a);
218
  foo ((2 << c) & !a);
219
  foo ((2 >> c) & !a);
220
  foo ((2 + c) & !a);
221
  foo ((2 - c) & !a);
222
  foo ((c = 2) & !a);
223
  foo (~2 & !a);
224
  foo ((2 & c) & !a);
225
  foo ((2 | c) & !a);
226
  foo ((2 << c) & !1);
227
  foo ((2 >> c) & !1);
228
  foo ((2 + c) & !1);
229
  foo ((2 - c) & !1);
230
  foo ((c = 2) & !1);
231
  foo (~2 & !1);
232
  foo ((2 & c) & !1);
233
  foo ((2 | c) & !1);
234
  foo ((b << c) | !a);
235
  foo ((b >> c) | !a);
236
  foo ((b + c) | !a);
237
  foo ((b - c) | !a);
238
  foo ((b = c) | !a);
239
  foo (~b | !a);
240
  foo ((b & c) | !a);
241
  foo ((b | c) | !a);
242
  foo ((2 << c) | !a);
243
  foo ((2 >> c) | !a);
244
  foo ((2 + c) | !a);
245
  foo ((2 - c) | !a);
246
  foo ((c = 2) | !a);
247
  foo (~2 | !a);
248
  foo ((2 & c) | !a);
249
  foo ((2 | c) | !a);
250
  foo ((2 << c) | !1);
251
  foo ((2 >> c) | !1);
252
  foo ((2 + c) | !1);
253
  foo ((2 - c) | !1);
254
  foo ((c = 2) | !1);
255
  foo (~2 | !1);
256
  foo ((2 & c) | !1);
257
  foo ((2 | c) | !1);
258
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.