diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-05-04 06:18:28 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-05-04 06:18:28 +0000 |
commit | 02e508960c1d2f7bbe0018d95b0ca850291f1c70 (patch) | |
tree | 1aa07d92d89548acbcf46763ded7a2298d4503be /clang/test/Analysis/array-struct.c | |
parent | 5b07c7ec057de27677dc4c0db2df4c5e998e9384 (diff) | |
download | llvm-02e508960c1d2f7bbe0018d95b0ca850291f1c70.zip llvm-02e508960c1d2f7bbe0018d95b0ca850291f1c70.tar.gz llvm-02e508960c1d2f7bbe0018d95b0ca850291f1c70.tar.bz2 |
Per conversations with Zhongxing, add an 'element type' to
ElementRegion. I also removed 'ElementRegion::getArrayRegion',
although we may need to add this back.
This breaks a few test cases with RegionStore:
- 'array-struct.c' triggers an infinite recursion in RegionStoreManager. Need to investigate.
- misc-ps.m triggers a failure with RegionStoreManager as we now get the diagnostic:
'Line 159: Uninitialized or undefined return value returned to caller.'
There were a bunch of places that needed to be edit
RegionStoreManager, and we may not be passing all the correct 'element
types' down from GRExprEngine.
Zhongxing: When you get a chance, could you review this? I could have
easily screwed up something basic in RegionStoreManager.
llvm-svn: 70830
Diffstat (limited to 'clang/test/Analysis/array-struct.c')
-rw-r--r-- | clang/test/Analysis/array-struct.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/clang/test/Analysis/array-struct.c b/clang/test/Analysis/array-struct.c index 0ce6afc..2b1aea7 100644 --- a/clang/test/Analysis/array-struct.c +++ b/clang/test/Analysis/array-struct.c @@ -1,8 +1,10 @@ // RUN: clang-cc -analyze -checker-simple -analyzer-store=basic -analyzer-constraints=basic -verify %s && // RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=basic -verify %s && -// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s && -// RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s && -// RUN: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s +// RUN: clang-cc -analyze -checker-cfref -analyzer-store=basic -analyzer-constraints=range -verify %s + +// RegionStore now has an infinite recursion with this test case. +// NOWORK: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=basic -verify %s && +// NOWORK: clang-cc -analyze -checker-cfref -analyzer-store=region -analyzer-constraints=range -verify %s struct s { int data; |