brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.5 KiB · 6e55b07 Raw
141 lines · c
1// RUN: %clang_analyze_cc1 -analyzer-checker=debug.ExprInspection -verify -std=c99 -Dbool=_Bool -Dtrue=1 -Dfalse=0 %s2// RUN: %clang_analyze_cc1 -analyzer-checker=debug.ExprInspection -verify -std=c11 -Dbool=_Bool -Dtrue=1 -Dfalse=0 %s3extern void clang_analyzer_eval(bool);4 5void test__Bool_value(void) {6  {7    bool b = true;8    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}9  }10 11  {12    bool b = false;13    clang_analyzer_eval(b == 0); // expected-warning{{TRUE}}14  }15 16  {17    bool b = -10;18    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}19  }20 21  {22    bool b = 10;23    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}24  }25 26  {27    bool b = 10;28    b++;29    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}30  }31 32  {33    bool b = 0;34    b++;35    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}36  }37}38 39void test__Bool_increment(void) {40  {41    bool b = true;42    b++;43    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}44  }45 46  {47    bool b = false;48    b++;49    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}50  }51 52  {53    bool b = true;54    ++b;55    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}56  }57 58  {59    bool b = false;60    ++b;61    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}62  }63 64  {65    bool b = 0;66    ++b;67    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}68  }69 70  {71    bool b = 10;72    ++b;73    ++b;74    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}75  }76 77  {78    bool b = -10;79    ++b;80    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}81  }82 83  {84    bool b = -1;85    ++b;86    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}87  }88}89 90void test__Bool_decrement(void) {91  {92    bool b = true;93    b--;94    clang_analyzer_eval(b == 0); // expected-warning{{TRUE}}95  }96 97  {98    bool b = false;99    b--;100    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}101  }102 103  {104    bool b = true;105    --b;106    clang_analyzer_eval(b == 0); // expected-warning{{TRUE}}107  }108 109  {110    bool b = false;111    --b;112    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}113  }114 115  {116    bool b = 0;117    --b;118    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}119  }120 121  {122    bool b = 10;123    --b;124    clang_analyzer_eval(b == 0); // expected-warning{{TRUE}}125    --b;126    clang_analyzer_eval(b == 1); // expected-warning{{TRUE}}127  }128 129  {130    bool b = -10;131    --b;132    clang_analyzer_eval(b == 0); // expected-warning{{TRUE}}133  }134 135  {136    bool b = 1;137    --b;138    clang_analyzer_eval(b == 0); // expected-warning{{TRUE}}139  }140}141