diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-12-24 01:34:10 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-12-24 01:34:10 +0000 |
commit | 1ce53c43207b92096a892ae41f849b7bfa5805f2 (patch) | |
tree | 079158543f0b1303c58def626ef6377eb1a5f300 /clang/test/Analysis/misc-ps-region-store.cpp | |
parent | 14ee5ead2d3559d517d97db406cd33c7dd39694d (diff) | |
download | bcm5719-llvm-1ce53c43207b92096a892ae41f849b7bfa5805f2.tar.gz bcm5719-llvm-1ce53c43207b92096a892ae41f849b7bfa5805f2.zip |
CFG tweak: in a WhileStmt, the condition variable initializer is evaluated every time the condition is checked.
llvm-svn: 92111
Diffstat (limited to 'clang/test/Analysis/misc-ps-region-store.cpp')
-rw-r--r-- | clang/test/Analysis/misc-ps-region-store.cpp | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/clang/test/Analysis/misc-ps-region-store.cpp b/clang/test/Analysis/misc-ps-region-store.cpp index fcef0516ec0..f71bb0ea385 100644 --- a/clang/test/Analysis/misc-ps-region-store.cpp +++ b/clang/test/Analysis/misc-ps-region-store.cpp @@ -61,16 +61,17 @@ int test_init_in_condition_switch() { } int test_init_in_condition_while() { - int y = 1; - while (int x = test_init_in_condition_aux()) { // no-warning - if (!x) { - y = 0; + int z = 0; + while (int x = ++z) { // no-warning + if (x == 2) break; - } - } - if (!y) { - int *p = 0; - *p = 0xDEADBEEF; // no-warning } + + if (z == 2) + return 0; + + int *p = 0; + *p = 0xDEADBEEF; // no-warning return 0; } + |