diff options
Diffstat (limited to 'clang/test/Analysis/additive-folding.cpp')
-rw-r--r-- | clang/test/Analysis/additive-folding.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/Analysis/additive-folding.cpp b/clang/test/Analysis/additive-folding.cpp index 33f3b9b2517..c2e502623e9 100644 --- a/clang/test/Analysis/additive-folding.cpp +++ b/clang/test/Analysis/additive-folding.cpp @@ -184,6 +184,18 @@ void mixedSignedness(int a, unsigned b) { clang_analyzer_eval(b == uMin && b != sMin); // expected-warning{{FALSE}} } +void mixedSignedness2(int a) { + if (a != -1) + return; + clang_analyzer_eval(a == UINT_MAX); // expected-warning{{TRUE}} +} + +void mixedSignedness3(unsigned a) { + if (a != UINT_MAX) + return; + clang_analyzer_eval(a == -1); // expected-warning{{TRUE}} +} + void multiplicativeSanityTest(int x) { // At one point we were ignoring the *4 completely -- the constraint manager |