summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis/GRExprEngine.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Small tweaks to EvalStore: pass an "RVal" instead of "LVal" for the TargetLV toTed Kremenek2008-04-161-12/+6
| | | | | | represent possible stores to "Unknown." llvm-svn: 49811
* Hook up "EvalStore" from GRTransferFuncs to GRExprEngine.Ted Kremenek2008-04-161-3/+20
| | | | llvm-svn: 49804
* Take first step to migrating handling of "stores" to values from GRExprEngineTed Kremenek2008-04-161-3/+8
| | | | | | to the plug-in GRTransferFuncs object. llvm-svn: 49801
* Added some comments to GRExprEngine. Reorder some of the method definitionsTed Kremenek2008-04-151-316/+365
| | | | | | | | to start logically organizing them. Added initial plug-in transfer function support for Objective-C message expressions. llvm-svn: 49752
* Remove FileVarDecl and BlockVarDecl. They are replaced by ↵Steve Naroff2008-04-151-1/+1
| | | | | | | | VarDecl::isBlockVarDecl() and VarDecl::isFileVarDecl(). This is a fairly mechanical/large change. As a result, I avoided making any changes/simplifications that weren't directly related. I did break two Analysis tests. I also have a couple FIXME's in UninitializedValues.cpp. Ted, can you take a look? If the bug isn't obvious, I am happy to dig in and fix it (since I broke it). llvm-svn: 49748
* Fixed some logic errors in the CF ref count checker; we now can detect simpleTed Kremenek2008-04-101-0/+2
| | | | | | use-after-release errors. Added test case. llvm-svn: 49509
* Major refactoring/cleanup of GRExprEngine, ExplodedGraph, and BugReporter.Ted Kremenek2008-04-091-0/+62
| | | | | | | | | | | | | | | Bugs are now reported using a combination of "BugType" (previously BugDescription) and Bug "BugReport" objects, which are fed to BugReporter (which generates PathDiagnostics). This provides a far more modular way of registering bug types and plugging in diagnostics. GRExprEngine now owns its copy of GRCoreEngine, and is not owned by the ExplodedGraph. ExplodedGraph is no longer templated on the "checker", but instead on the state contained in the nodes. llvm-svn: 49453
* simplify some code by using PointerLikeType.Chris Lattner2008-04-021-1/+1
| | | | llvm-svn: 49101
* Added path-sensitive check for return statements that return the addressTed Kremenek2008-03-311-8/+46
| | | | | | | of a stack variable. This is the path-sensitive version of a check that is already done during semantic analysis. llvm-svn: 48980
* Hooked up initial NSString interface checking to GRSimpleVals.Ted Kremenek2008-03-271-4/+4
| | | | llvm-svn: 48895
* Added "GRAuditor" and "GRSimpleAPICheck" interface to allow simple stateless ↵Ted Kremenek2008-03-271-0/+13
| | | | | | | | | checkers to be injected into the analyzer. Added "AnnotatedPath" class to record an annotated path that will be useful for inspecting paths. Added some boilerplate code for simple checks of Apple's Foundation API. llvm-svn: 48867
* Bug fix: use GetRVal instead of GetLVal (were getting the value of a ↵Ted Kremenek2008-03-261-1/+1
| | | | | | DeclRefExpr, not it's address). llvm-svn: 48846
* Bug fix in transfer function for ObjCMessageExpr: Visit the receiver ↵Ted Kremenek2008-03-261-1/+1
| | | | | | expression as an ordinary expression, not using VisitLVal. llvm-svn: 48842
* Tweak to transfer function for ObjCMessageExpr: handle both instance methodsTed Kremenek2008-03-251-66/+70
| | | | | | and message expressions with a specified receiver. llvm-svn: 48773
* Added logic to check for uninitialized values as the receivers for message ↵Ted Kremenek2008-03-251-8/+64
| | | | | | | | expressions and uninitialized values passed-by-value as arguments to message expressions. llvm-svn: 48760
* Added initial transfer function support for ObjCMessageExpr.Ted Kremenek2008-03-251-0/+41
| | | | llvm-svn: 48757
* Rename "Nodify" to "MakeNode"Ted Kremenek2008-03-211-25/+27
| | | | llvm-svn: 48659
* Fix assertion.Ted Kremenek2008-03-171-1/+1
| | | | llvm-svn: 48470
* Fix integer overflow bug when processing switch statements.Ted Kremenek2008-03-171-4/+9
| | | | llvm-svn: 48469
* Properly hook up inline asm transfer function logic to the main GRExprEngine ↵Ted Kremenek2008-03-171-0/+4
| | | | | | logic. llvm-svn: 48468
* Added initial transfer function support for inline asm.Ted Kremenek2008-03-171-0/+62
| | | | llvm-svn: 48466
* Make a major restructuring of the clang tree: introduce a top-levelChris Lattner2008-03-151-0/+1941
lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. llvm-svn: 48402
OpenPOWER on IntegriCloud