- Feb 13, 2009
-
-
Ted Kremenek authored
Add test case illustrating special handling of 'SenTestCase' subclasses for the missing -dealloc check. llvm-svn: 64494
-
Ted Kremenek authored
llvm-svn: 64417
-
- Feb 11, 2009
-
-
Ted Kremenek authored
llvm-svn: 64257
-
- Feb 09, 2009
-
-
Ted Kremenek authored
Fix PR 2514: Do not flag dead initializations for variables initialized to a constant global variable. llvm-svn: 64149
-
- Feb 08, 2009
-
-
Sebastian Redl authored
llvm-svn: 64080
-
- Feb 07, 2009
-
-
Ted Kremenek authored
llvm-svn: 64045
-
- Feb 06, 2009
-
-
Zhongxing Xu authored
llvm-svn: 63930
-
Zhongxing Xu authored
for FieldRegion. This enables us to track more values. Simplify SymbolicRegion::getRValueType(). We assume the symbol always has pointer type. llvm-svn: 63928
-
- Feb 05, 2009
-
-
Ted Kremenek authored
Add 'AppendValue' to the list of magic CF function names that cause a tracked object to escape. Fixes <rdar://problem/6560661>. llvm-svn: 63891
-
Ted Kremenek authored
the ownership of BugTypes and BugReports. Now BugReports are owned by BugTypes, and BugTypes are owned by the BugReporter object. The major functionality change in this patch is that reports are not immediately emitted by a call to BugReporter::EmitWarning (now called EmitReport), but instead of queued up in report "equivalence classes". When BugReporter::FlushReports() is called, it emits one diagnostic per report equivalence class. This provides a nice cleanup with the caching of reports as well as enables the BugReporter engine to select the "best" path for reporting a path-sensitive bug based on all the locations in the ExplodedGraph that the same bug could occur. Along with this patch, Leaks are now coalesced into a common equivalence class by their allocation site, and the "summary" diagnostic for leaks now reports the allocation site as the location of the bug (this may later be augmented to also provide an example location where the leak occurs). llvm-svn: 63796
-
- Jan 30, 2009
-
-
Ted Kremenek authored
the liveness state of block-level expressions could oscillate because of two issues: - The initial value before a merge was not always set to "Top" - The set of live block-level expressions is a union, not an intersection This fixes <rdar://problem/650084>. llvm-svn: 63421
-
Nuno Lopes authored
llvm-svn: 63392
-
Nuno Lopes authored
llvm-svn: 63391
-
Ted Kremenek authored
- NonLoc::MakeVal() would use sizeof(unsigned) (literally) instead of consulting ASTContext for the size (in bits) of 'int'. While it worked, it was a conflation of concepts and using ASTContext.IntTy is 100% correct. - RegionStore::getSizeInElements() no longer assumes that a VarRegion has the type "ConstantArray", and handles the case when uses use ordinary variables as if they were arrays. - Fixed ElementRegion::getRValueType() to just return the rvalue type of its "array region" in the case the array didn't have ArrayType. - All of this fixes <rdar://problem/6541136> llvm-svn: 63347
-
- Jan 29, 2009
-
-
Ted Kremenek authored
retain/release checker: When generating summaries for CF/CG functions, allow arguments to "escape" if they are passed to a function containing the terms "InsertValue", "SetValue", or "AddValue". This fixes <rdar://problem/6539791>. llvm-svn: 63341
-
- Jan 28, 2009
-
-
Ted Kremenek authored
retain/release checker: Always generate an "autorelease" summary for an "autorelease" message, and have the summary processing logic treat it as a no-op in GC mode. This change is motivated to encode more of the semantics in the summaries themselves for eventual better diagnostics. llvm-svn: 63241
-
Ted Kremenek authored
llvm-svn: 63237
-
Ted Kremenek authored
retain/release checker: Improve diagnostics to indicate that CF objects are not automatically garbage collected. llvm-svn: 63187
-
- Jan 27, 2009
-
-
Ted Kremenek authored
Fix bug in BasicStore::getLValueElement where if the base of an array subscript expression was an ElementRegion we stacked another ElementRegion on top of that. This fixes PR 3422. llvm-svn: 63110
-
- Jan 24, 2009
-
-
Ted Kremenek authored
Fix crash ElementRegion::getRValueType() when the RvalueType of the ArrayRegion is a typedef and not (directly) a pointer. llvm-svn: 62909
-
Ted Kremenek authored
More hacking on static analyzer diagnostics. When emitting summary diagnostics the code paths for diagnostics involving paths or single locations are now unified. This patch also constifies many arguments/methods that are touched by this logic, leading to a nice overall code cleanup. llvm-svn: 62903
-
- Jan 23, 2009
-
-
Zhongxing Xu authored
llvm-svn: 62847
-
Zhongxing Xu authored
llvm-svn: 62845
-
Ted Kremenek authored
For now, return UnknownVal() in RegionStore::getElementsSize() for AnonTypedRegions. It wasn't really doing the right thing and was crashing on rdar-6442306-1.m. This fix causes all path-sensitive test cases to pass with RegionStore. llvm-svn: 62816
-
Ted Kremenek authored
Add RegionStore support for the implicit object region that 'self' references. This causes tests 'ObjCProperties.m' and 'refcnt_naming.m' to now pass with RegionStore. llvm-svn: 62814
-
- Jan 22, 2009
-
-
Ted Kremenek authored
llvm-svn: 62805
-
Ted Kremenek authored
llvm-svn: 62804
-
Ted Kremenek authored
llvm-svn: 62803
-
Ted Kremenek authored
llvm-svn: 62802
-
Ted Kremenek authored
llvm-svn: 62801
-
Ted Kremenek authored
llvm-svn: 62800
-
Ted Kremenek authored
llvm-svn: 62799
-
Ted Kremenek authored
llvm-svn: 62798
-
Ted Kremenek authored
llvm-svn: 62796
-
Ted Kremenek authored
llvm-svn: 62795
-
Ted Kremenek authored
llvm-svn: 62782
-
Ted Kremenek authored
Fix RegionStore::getLValueElement() to handle the case when the base region is not an ElementRegion (also do some cleanups of its core logic). This gets array-struct.c to work with RegionStore. llvm-svn: 62781
-
Ted Kremenek authored
llvm-svn: 62773
-
Ted Kremenek authored
The 'misc-ps.m' test case now passes with RegionStore. One case needed to be split out into 'misc-ps-basic-store.m' and 'misc-ps-region-store.m' because the behavior was different between the two store models (RegionStore flags an additional valid bug). llvm-svn: 62772
-
- Jan 21, 2009
-
-
Ted Kremenek authored
llvm-svn: 62670
-