summaryrefslogtreecommitdiffstats
path: root/clang/test/Analysis/misc-ps-region-store.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-12-24 01:34:10 +0000
committerTed Kremenek <kremenek@apple.com>2009-12-24 01:34:10 +0000
commit1ce53c43207b92096a892ae41f849b7bfa5805f2 (patch)
tree079158543f0b1303c58def626ef6377eb1a5f300 /clang/test/Analysis/misc-ps-region-store.cpp
parent14ee5ead2d3559d517d97db406cd33c7dd39694d (diff)
downloadbcm5719-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.cpp19
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;
}
+
OpenPOWER on IntegriCloud