Ted Kremenek
3e871d8cf6
Use the BlockDecl captures list to infer the direct captures for a BlockDataRegion. Fixes <rdar://problem/12415065>.
...
We still need to do a recursive walk to determine all static/global variables
referenced by a block, which is needed for region invalidation.
llvm-svn: 169481
2012-12-06 07:17:26 +00:00
Jordan Rose
27d126f97b
[analyzer] Fix test in previous commit.
...
llvm-svn: 167995
2012-11-14 23:09:52 +00:00
Jordan Rose
5a29f3c05e
[analyzer] Add a test case for printing a path note at a PreStmt point.
...
This is also a false-positive test case for <rdar://problem/12415065>.
<rdar://problem/12687586>
llvm-svn: 167994
2012-11-14 23:03:55 +00:00
Jordan Rose
9844ab8992
[analyzer] Make BlockDataRegions typed, so that they have DynamicTypeInfo.
...
Fixes <rdar://problem/12119814>
llvm-svn: 162123
2012-08-17 20:16:34 +00:00
Ted Kremenek
c3da376fbc
static analyzer: add inlining support for directly called blocks.
...
llvm-svn: 157833
2012-06-01 20:04:04 +00:00
Argyrios Kyrtzidis
9eb02dfa89
[analyzer] Remove '-analyzer-check-objc-mem' flag, the nominee for best misnomer award.
...
llvm-svn: 126676
2011-02-28 19:49:42 +00:00
Argyrios Kyrtzidis
60b6da721f
[analyzer] Migrate UndefCapturedBlockVarChecker to CheckerV2.
...
llvm-svn: 126615
2011-02-28 01:27:26 +00:00
Ted Kremenek
7fd987de23
Tweak wording of static analyzer diagnostic
...
for a block capturing the value of an uninitialized
variable.
llvm-svn: 124212
2011-01-25 19:13:42 +00:00
Ted Kremenek
3eac2454dc
Add test case showing that a recursive block that captures a block pointer that
...
isn't marked '__block' is bad.
llvm-svn: 96357
2010-02-16 16:55:10 +00:00
Ted Kremenek
228639746a
Add simpler checker to check if variables captured by a block are uninitialized.
...
llvm-svn: 96341
2010-02-16 08:33:59 +00:00
Ted Kremenek
2f2692f8ca
Rename -cc1 option '-checker-cfref' to '-analyzer-check-objc-mem'.
...
llvm-svn: 95348
2010-02-05 02:06:54 +00:00
Daniel Dunbar
8fbe78f6fc
Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.
...
- This is designed to make it obvious that %clang_cc1 is a "test variable"
which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it
can be useful to redefine what gets run as 'clang -cc1' (for example, to set
a default target).
llvm-svn: 91446
2009-12-15 20:14:24 +00:00
Zhongxing Xu
27f686f8ec
Replace clang-cc with clang -cc1.
...
llvm-svn: 91272
2009-12-14 06:34:20 +00:00
Ted Kremenek
b2dc72d2d0
Add new test case file that focuses on testing analyzer support for blocks.
...
llvm-svn: 90274
2009-12-01 22:47:46 +00:00