1*1f5207b7SJohn Levon static unsigned int ok1  = !1 &&  2;
2*1f5207b7SJohn Levon static unsigned int bad1 = !1 &   2;
3*1f5207b7SJohn Levon static unsigned int ok2  = !1 ||  2;
4*1f5207b7SJohn Levon static unsigned int bad2 = !1 |   2;
5*1f5207b7SJohn Levon static unsigned int ok3  =  1 && !2;
6*1f5207b7SJohn Levon static unsigned int bad3 =  1 &  !2;
7*1f5207b7SJohn Levon static unsigned int ok4  =  1 || !2;
8*1f5207b7SJohn Levon static unsigned int bad4 =  1 |  !2;
9*1f5207b7SJohn Levon static unsigned int ok5  = !1 && !2;
10*1f5207b7SJohn Levon static unsigned int bad5 = !1 &  !2;
11*1f5207b7SJohn Levon static unsigned int ok6  = !1 || !2;
12*1f5207b7SJohn Levon static unsigned int bad6 = !1 |  !2;
13*1f5207b7SJohn Levon /*
14*1f5207b7SJohn Levon  * check-name: Dubious bitwise operation on !x
15*1f5207b7SJohn Levon  *
16*1f5207b7SJohn Levon  * check-error-start
17*1f5207b7SJohn Levon dubious-bitwise-with-not.c:2:31: warning: dubious: !x & y
18*1f5207b7SJohn Levon dubious-bitwise-with-not.c:4:31: warning: dubious: !x | y
19*1f5207b7SJohn Levon dubious-bitwise-with-not.c:6:31: warning: dubious: x & !y
20*1f5207b7SJohn Levon dubious-bitwise-with-not.c:8:31: warning: dubious: x | !y
21*1f5207b7SJohn Levon dubious-bitwise-with-not.c:10:31: warning: dubious: !x & !y
22*1f5207b7SJohn Levon dubious-bitwise-with-not.c:12:31: warning: dubious: !x | !y
23*1f5207b7SJohn Levon  * check-error-end
24*1f5207b7SJohn Levon  */
25