diff options
| author | Ted Kremenek <kremenek@apple.com> | 2012-09-07 19:09:51 +0000 |
|---|---|---|
| committer | Ted Kremenek <kremenek@apple.com> | 2012-09-07 19:09:51 +0000 |
| commit | a8d0ca070f39d3c03d8eb2066578fe3ac3be0c2a (patch) | |
| tree | 564a82221e565eed60dd9390d3660a7cc4eb278b | |
| parent | ad100ec90eb3248da879ba5a8a13b514d0a9eb76 (diff) | |
| download | bcm5719-llvm-a8d0ca070f39d3c03d8eb2066578fe3ac3be0c2a.tar.gz bcm5719-llvm-a8d0ca070f39d3c03d8eb2066578fe3ac3be0c2a.zip | |
Add test case for <rdar://problem/12075238>, which recently got fixed by changes to RegionStore.
llvm-svn: 163406
| -rw-r--r-- | clang/test/Analysis/misc-ps.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/Analysis/misc-ps.c b/clang/test/Analysis/misc-ps.c index 8ff710b12f5..ef89321fff6 100644 --- a/clang/test/Analysis/misc-ps.c +++ b/clang/test/Analysis/misc-ps.c @@ -133,3 +133,21 @@ int isctype(char c, unsigned long f) return (c < 1 || c > 10) ? 0 : !!(c & f); } +// Test that symbolic array offsets are modeled conservatively. +// This was triggering a false "use of uninitialized value" warning. +void rdar_12075238__aux(unsigned long y); +int rdar_12075238_(unsigned long count) { + if ((count < 3) || (count > 6)) + return 0; + + unsigned long array[6]; + unsigned long i = 0; + for (; i <= count - 2; i++) + { + array[i] = i; + } + array[count - 1] = i; + rdar_12075238__aux(array[2]); // no-warning + return 0; +} + |

