|
@@ -24,12 +24,17 @@ enum num {
|
|
|
|
|
|
int test(int a, unsigned b, enum num n) {
|
|
int test(int a, unsigned b, enum num n) {
|
|
boolean r;
|
|
boolean r;
|
|
- r = a << a; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(a << a) != 0'?}}
|
|
|
|
- r = MM; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(a << a) != 0'?}}
|
|
|
|
- r = (1 << 7); // expected-warning {{converting the result of '<<' to a boolean; did you mean '(1 << 7) != 0'?}}
|
|
|
|
- r = 2UL << 2;
|
|
|
|
- r = 2 << b; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(2 << b) != 0'?}}
|
|
|
|
- r = (unsigned)(2 << b);
|
|
|
|
|
|
+ r = a << a; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(a << a) != 0'?}}
|
|
|
|
+ r = MM; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(a << a) != 0'?}}
|
|
|
|
+ r = (1 << 7); // expected-warning {{converting the result of '<<' to a boolean always evaluates to true}}
|
|
|
|
+ r = 2UL << 2; // expected-warning {{converting the result of '<<' to a boolean always evaluates to true}}
|
|
|
|
+ r = 0 << a; // expected-warning {{converting the result of '<<' to a boolean always evaluates to false}}
|
|
|
|
+ r = 0 << 2; // expected-warning {{converting the result of '<<' to a boolean always evaluates to false}}
|
|
|
|
+ r = 1 << 0; // expected-warning {{converting the result of '<<' to a boolean always evaluates to true}}
|
|
|
|
+ r = 1 << 2; // expected-warning {{converting the result of '<<' to a boolean always evaluates to true}}
|
|
|
|
+ r = 1ULL << 2; // expected-warning {{converting the result of '<<' to a boolean always evaluates to true}}
|
|
|
|
+ r = 2 << b; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(2 << b) != 0'?}}
|
|
|
|
+ r = (unsigned)(2 << b);
|
|
r = b << 7;
|
|
r = b << 7;
|
|
r = (1 << a); // expected-warning {{converting the result of '<<' to a boolean; did you mean '(1 << a) != 0'?}}
|
|
r = (1 << a); // expected-warning {{converting the result of '<<' to a boolean; did you mean '(1 << a) != 0'?}}
|
|
r = TWO << a; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(2 << a) != 0'?}}
|
|
r = TWO << a; // expected-warning {{converting the result of '<<' to a boolean; did you mean '(2 << a) != 0'?}}
|
|
@@ -39,7 +44,7 @@ int test(int a, unsigned b, enum num n) {
|
|
return a;
|
|
return a;
|
|
|
|
|
|
for (a = 0; 1 << a; a++) // expected-warning {{converting the result of '<<' to a boolean; did you mean '(1 << a) != 0'?}}
|
|
for (a = 0; 1 << a; a++) // expected-warning {{converting the result of '<<' to a boolean; did you mean '(1 << a) != 0'?}}
|
|
- ;
|
|
|
|
|
|
+ ;
|
|
|
|
|
|
if (a << TWO) // expected-warning {{converting the result of '<<' to a boolean; did you mean '(a << 2) != 0'?}}
|
|
if (a << TWO) // expected-warning {{converting the result of '<<' to a boolean; did you mean '(a << 2) != 0'?}}
|
|
return a;
|
|
return a;
|