diff options
author | Dominic Chen <d.c.ddcc@gmail.com> | 2017-03-02 23:05:45 +0000 |
---|---|---|
committer | Dominic Chen <d.c.ddcc@gmail.com> | 2017-03-02 23:05:45 +0000 |
commit | feaf9ff5eeb7fcdd76770e7d471f3a26df366fd3 (patch) | |
tree | 5b285b7f01ca6bc6378bd3d5c9f0477de89b3ef2 /clang/test/Analysis/bool-assignment.c | |
parent | 4a90bf8c3f47e7e6bb08118a1dba6a78f23f92ca (diff) | |
download | bcm5719-llvm-feaf9ff5eeb7fcdd76770e7d471f3a26df366fd3.tar.gz bcm5719-llvm-feaf9ff5eeb7fcdd76770e7d471f3a26df366fd3.zip |
Reland 3: [analyzer] NFC: Update test infrastructure to support multiple constraint managers
Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952.
Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin
Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits
Differential Revision: https://reviews.llvm.org/D30373
llvm-svn: 296837
Diffstat (limited to 'clang/test/Analysis/bool-assignment.c')
-rw-r--r-- | clang/test/Analysis/bool-assignment.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/clang/test/Analysis/bool-assignment.c b/clang/test/Analysis/bool-assignment.c index 285569ee11b..57a7f0b5dc1 100644 --- a/clang/test/Analysis/bool-assignment.c +++ b/clang/test/Analysis/bool-assignment.c @@ -1,5 +1,5 @@ -// RUN: %clang_cc1 -analyze -analyzer-checker=core,alpha.core.BoolAssignment -analyzer-store=region -verify -std=c99 -Dbool=_Bool %s -// RUN: %clang_cc1 -analyze -analyzer-checker=core,alpha.core.BoolAssignment -analyzer-store=region -verify -x c++ %s +// RUN: %clang_analyze_cc1 -analyzer-checker=core,alpha.core.BoolAssignment -analyzer-store=region -verify -std=c99 -Dbool=_Bool %s +// RUN: %clang_analyze_cc1 -analyzer-checker=core,alpha.core.BoolAssignment -analyzer-store=region -verify -x c++ %s // Test C++'s bool and C's _Bool. // FIXME: We stopped warning on these when SValBuilder got smarter about @@ -43,8 +43,11 @@ void test_BOOL_initialization(int y) { return; } if (y > 200 && y < 250) { - // FIXME: Currently we are loosing this warning due to a SymbolCast in RHS. +#ifdef ANALYZER_CM_Z3 + BOOL x = y; // expected-warning {{Assignment of a non-Boolean value}} +#else BOOL x = y; // no-warning +#endif return; } if (y >= 127 && y < 150) { |