llvm-project/clang/lib/Checker
Ted Kremenek 297e2e5bf6 Fix idempotent operations false positive caused by ivars not being invalidated in function
calls when the enclosing object had retain/release state.  Fixes <rdar://problem/8261992>.

llvm-svn: 110068
2010-08-02 21:59:12 +00:00
..
AdjustedReturnValueChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
AggExprVisitor.cpp Improve C++ constructor handling. 2010-04-01 03:47:27 +00:00
AnalysisConsumer.cpp Reapply r108617. 2010-07-19 01:31:21 +00:00
AnalysisManager.cpp Reapply r108617. 2010-07-19 01:31:21 +00:00
ArrayBoundChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
AttrNonNullChecker.cpp If a nonnull argument evaluates to UnknownVal, don't warn (and don't crash). 2010-06-21 20:08:28 +00:00
BasicConstraintManager.cpp Fold additive constants, and support comparsions of the form $sym+const1 <> const2 2010-06-18 22:49:11 +00:00
BasicObjCFoundationChecks.cpp Improve NULL-checking for CFRetain/CFRelease. We now remember that the argument was non-NULL, and we report where the null assumption came from (like AttrNonNullChecker already did). 2010-07-06 02:34:42 +00:00
BasicObjCFoundationChecks.h Improve NULL-checking for CFRetain/CFRelease. We now remember that the argument was non-NULL, and we report where the null assumption came from (like AttrNonNullChecker already did). 2010-07-06 02:34:42 +00:00
BasicStore.cpp Explicitly guard in BasicStore from storing to non-scalars. 2010-07-29 00:28:40 +00:00
BasicValueFactory.cpp Change LazyCompoundVal to a <Store, MemRegion*> pair. We really don't need to 2010-02-05 02:26:30 +00:00
BugReporter.cpp Constify all references to Stmt* and CFGBlock* in libChecker. 2010-07-20 06:22:24 +00:00
BugReporterVisitors.cpp Constify all references to Stmt* and CFGBlock* in libChecker. 2010-07-20 06:22:24 +00:00
BuiltinFunctionChecker.cpp Add a new symbol type, SymbolExtent, to represent the extents of memory regions that may not be known at compile-time (such as those created by malloc). This replaces the old setExtent/getExtent API on Store, which used the GRState's GDM to store SVals. 2010-07-04 00:00:41 +00:00
CFRefCount.cpp Fix idempotent operations false positive caused by ivars not being invalidated in function 2010-08-02 21:59:12 +00:00
CMakeLists.txt Extracted out some useful common functions in IdempotentOperationChecker to their own CheckerHelpers file. 2010-07-27 23:26:07 +00:00
CStringChecker.cpp Groundwork for C string length tracking. Currently only handles the length of constant string literals, which is not too helpful, and only calls to strlen() are checked. 2010-07-27 01:37:31 +00:00
CallAndMessageChecker.cpp Introduce Type::isStructureOrClassType(), which does the obvious 2010-04-26 21:31:17 +00:00
CastSizeChecker.cpp Add a new symbol type, SymbolExtent, to represent the extents of memory regions that may not be known at compile-time (such as those created by malloc). This replaces the old setExtent/getExtent API on Store, which used the GRState's GDM to store SVals. 2010-07-04 00:00:41 +00:00
CastToStructChecker.cpp Introduce Type::isStructureOrClassType(), which does the obvious 2010-04-26 21:31:17 +00:00
CheckDeadStores.cpp Further adjustments to -Wglobal-constructors; works for references and direct 2010-08-02 21:13:48 +00:00
CheckObjCDealloc.cpp Add clang support for IBOutletCollection. 2010-05-19 17:38:06 +00:00
CheckObjCInstMethSignature.cpp Add raw_ostream operators to NamedDecl for convenience. Switch over all users of getNameAsString on a stream. 2010-04-17 09:33:03 +00:00
CheckSecuritySyntaxOnly.cpp Type Type::isRealFloatingType() that vectors are not floating-point 2010-06-22 23:07:26 +00:00
CheckSizeofPointer.cpp Move 'LocalCheckers.h' to the 'Checkers' subdirectory. 2010-01-26 22:59:55 +00:00
Checker.cpp
CheckerHelpers.cpp Extracted out some useful common functions in IdempotentOperationChecker to their own CheckerHelpers file. 2010-07-27 23:26:07 +00:00
CocoaConventions.cpp Reapply r95546, no intended change in performance or functionality. 2010-02-08 18:38:55 +00:00
DereferenceChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
DivZeroChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
Environment.cpp Add an ivar to SymbolReaper for the current statement, and then stop passing the current statement around everywhere. Preparation for symbolic extents. 2010-07-01 20:09:55 +00:00
ExplodedGraph.cpp
FixedAddressChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
FlatStore.cpp Improve flat store: MemRegion::getAsOffset() computes a region's offset within 2010-08-02 04:56:14 +00:00
FrontendActions.cpp Break Frontend's dependency on Rewrite, Checker and CodeGen in shared library configuration 2010-06-15 17:48:49 +00:00
GRBlockCounter.cpp Since we now may have basicblocks with the same block is in different function, 2010-03-23 05:05:02 +00:00
GRCXXExprEngine.cpp Constify all references to Stmt* and CFGBlock* in libChecker. 2010-07-20 06:22:24 +00:00
GRCoreEngine.cpp Make a bunch of new data structures for the new analysis 2010-07-22 13:52:13 +00:00
GRExprEngine.cpp Teach GRExprEngine::VisitLValue() about FloatingLiteral, ImaginaryLiteral, and CharacterLiteral. Fixes an assertion failure reported in PR 7675. 2010-07-29 01:31:59 +00:00
GRExprEngineExperimentalChecks.cpp Added an path-sensitive unreachable code checker to the experimental analyzer checks. 2010-07-23 23:04:53 +00:00
GRExprEngineExperimentalChecks.h Added an path-sensitive unreachable code checker to the experimental analyzer checks. 2010-07-23 23:04:53 +00:00
GRExprEngineInternalChecks.h Improved false positive rate for the idempotent operations checker and moved it into the default path-sensitive analysis options. 2010-07-16 20:41:41 +00:00
GRState.cpp Change arg type. 2010-07-23 05:55:01 +00:00
HTMLDiagnostics.cpp llvm::errs() is non-buffered, so it doesn't need to be flushed. 2010-06-28 15:56:07 +00:00
IdempotentOperationChecker.cpp 'Assumption &A' gets default initialized to 'Possible' if it doesn't exist; no need to two 2010-08-02 20:33:02 +00:00
LLVMConventionsChecker.cpp Pass StringRefs by value. 2010-07-14 23:19:41 +00:00
MacOSXAPIChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
Makefile BUILD_ARCHIVE is the default for libraries, no need to set it. 2010-07-18 00:14:47 +00:00
MallocChecker.cpp After a lengthy design discussion, add support for "ownership attributes" for malloc/free checking. Patch by Andrew McGregor! 2010-07-31 01:52:11 +00:00
ManagerRegistry.cpp
MemRegion.cpp Improve flat store: MemRegion::getAsOffset() computes a region's offset within 2010-08-02 04:56:14 +00:00
NSAutoreleasePoolChecker.cpp Overhaul the AST representation of Objective-C message send 2010-04-21 00:45:42 +00:00
NSErrorChecker.cpp Add raw_ostream operators to NamedDecl for convenience. Switch over all users of getNameAsString on a stream. 2010-04-17 09:33:03 +00:00
NoReturnFunctionChecker.cpp the big refactoring bits of PR3782. 2010-03-30 20:24:48 +00:00
OSAtomicChecker.cpp Constify. 2010-07-20 02:41:28 +00:00
ObjCUnusedIVarsChecker.cpp Add clang support for IBOutletCollection. 2010-05-19 17:38:06 +00:00
PathDiagnostic.cpp Simplify code and remove comment that is no longer relevant. 2010-07-07 12:24:14 +00:00
PlistDiagnostics.cpp Break Frontend's dependency on Rewrite, Checker and CodeGen in shared library configuration 2010-06-15 17:48:49 +00:00
PointerArithChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
PointerSubChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
PthreadLockChecker.cpp Revert 95541. 2010-02-08 16:18:51 +00:00
RangeConstraintManager.cpp Fold additive constants, and support comparsions of the form $sym+const1 <> const2 2010-06-18 22:49:11 +00:00
RegionStore.cpp Improve flat store: MemRegion::getAsOffset() computes a region's offset within 2010-08-02 04:56:14 +00:00
ReturnPointerRangeChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
ReturnUndefChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
SVals.cpp Added a path-sensitive idempotent operation checker (-analyzer-idempotent-operation). Finds idempotent and/or tautological operations in a path sensitive context, flagging operations that have no effect or a predictable effect. 2010-07-06 21:43:29 +00:00
SValuator.cpp Pointer comparisons (and pointer-pointer subtraction). Basically filling in SimpleSValuator::EvalBinOpLL(). 2010-06-28 08:26:15 +00:00
SimpleConstraintManager.cpp Implicitly compare symbolic expressions to zero when they're being used as constraints. Part of PR7491. 2010-06-27 01:20:56 +00:00
SimpleConstraintManager.h Fold additive constants, and support comparsions of the form $sym+const1 <> const2 2010-06-18 22:49:11 +00:00
SimpleSValuator.cpp Improve flat store: MemRegion::getAsOffset() computes a region's offset within 2010-08-02 04:56:14 +00:00
StackAddrLeakChecker.cpp Tweak stack address checker to report multiple cases where globals may reference stack memory. 2010-06-17 04:21:37 +00:00
Store.cpp Improve flat store: MemRegion::getAsOffset() computes a region's offset within 2010-08-02 04:56:14 +00:00
StreamChecker.cpp Add FILE* leak check to StreamChecker. Patch by Lei Zhang. 2010-07-23 14:14:59 +00:00
SymbolManager.cpp Change SymbolManager::canSymbolicate() to return true for RecordTypes. 2010-07-29 00:28:43 +00:00
UndefBranchChecker.cpp Constify all references to Stmt* and CFGBlock* in libChecker. 2010-07-20 06:22:24 +00:00
UndefCapturedBlockVarChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
UndefResultChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
UndefinedArraySubscriptChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
UndefinedAssignmentChecker.cpp Checker: random include cleanup. 2010-03-27 21:19:47 +00:00
UnixAPIChecker.cpp Remove copy of 'Optional' in Clang tree, and convert clients to use the one now in the LLVM tree. 2010-04-09 20:26:58 +00:00
UnreachableCodeChecker.cpp Added some false positive checking to UnreachableCodeChecker 2010-07-27 23:30:21 +00:00
VLASizeChecker.cpp Add comment noting VLASizeChecker's duty in defining a VLA's extent. 2010-07-06 23:33:54 +00:00
ValueManager.cpp Since now we store the cast type with an ElementRegion, there is 2010-03-01 06:56:52 +00:00