summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/warn-bitwise-compare.cpp
blob: 0fc3a6ac2d0c541fe399c8aec5728940dc6b6e7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
// RUN: %clang_cc1 -fsyntax-only -verify -Wtautological-bitwise-compare %s
// RUN: %clang_cc1 -fsyntax-only -verify -Wall -Wno-unused %s

void test(int x) {
  bool b1 = (8 & x) == 3;
  // expected-warning@-1 {{bitwise comparison always evaluates to false}}
  bool b2 = x | 5;
  // expected-warning@-1 {{bitwise or with non-zero value always evaluates to true}}
  bool b3 = (x | 5);
  // expected-warning@-1 {{bitwise or with non-zero value always evaluates to true}}
  bool b4 = !!(x | 5);
  // expected-warning@-1 {{bitwise or with non-zero value always evaluates to true}}
}
OpenPOWER on IntegriCloud