summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis
Commit message (Collapse)AuthorAgeFilesLines
* Do not prepend the keyword "[CHECKER]" to checker messages when usingTed Kremenek2008-03-311-2/+5
| | | | | | a PathDiagnosticClient. llvm-svn: 48996
* Include ranges in GRSimpleVals diagnostics.Ted Kremenek2008-03-311-1/+3
| | | | llvm-svn: 48990
* Inlined clang/Analysis/Analyses/GRSimpleVals.h into LocalCheckers.h and removedTed Kremenek2008-03-312-23/+27
| | | | | | | | | | GRSimpleVals.h Added a PathDiagnosticClient option to the driver functions for the CFRefCountChecker and the GRSimpleVals analysis. Both analyses now accept a "-o" argument from the driver that specifies where HTML reports should be dumped. llvm-svn: 48989
* Added path-sensitive check for return statements that return the addressTed Kremenek2008-03-312-8/+51
| | | | | | | of a stack variable. This is the path-sensitive version of a check that is already done during semantic analysis. llvm-svn: 48980
* Added skeleton checking for NSString's method initWithFormat: (do not pass ↵Ted Kremenek2008-03-281-3/+12
| | | | | | | | nil). This won't be useful in most cases right now because the analyzer isn't tracking expected types for an object, and [NSString alloc] just runs "id". llvm-svn: 48917
* Expanded NSString checking to check for nil for a few more methods.Ted Kremenek2008-03-271-31/+92
| | | | llvm-svn: 48898
* Add line SourceLocation to NSString checks.Ted Kremenek2008-03-271-10/+24
| | | | | | Added test case to test warning about passing 'nil' to NSString's compare: method. llvm-svn: 48896
* Hooked up initial NSString interface checking to GRSimpleVals.Ted Kremenek2008-03-273-14/+42
| | | | llvm-svn: 48895
* Add creation of BasicObjCFoundationChecks when running GRSimpleVals from the ↵Ted Kremenek2008-03-273-3/+58
| | | | | | driver. llvm-svn: 48886
* Added "GRAuditor" and "GRSimpleAPICheck" interface to allow simple stateless ↵Ted Kremenek2008-03-272-0/+152
| | | | | | | | | 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
* PathDiagnosticPiece no longer contains a vector of strings; just one string.Ted Kremenek2008-03-271-7/+29
| | | | | | PathDiagnostic no longer contains a diagnostic ID or diagnostic level. llvm-svn: 48864
* Added classes "PathDiagnosticPiece", "PathDiagnostic", and ↵Ted Kremenek2008-03-271-0/+52
| | | | | | "PathDiagnosticClient", which encapsulate diagnostic reporting for paths. llvm-svn: 48861
* 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
* GRSimple analysis now outputs additional diagnostic warnings aboutTed Kremenek2008-03-251-8/+14
| | | | | | passing an uninitialized value to a message expresion. llvm-svn: 48776
* 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
* Changed merge operation for uninitialized values analysis to "intersect" ↵Ted Kremenek2008-03-221-1/+1
| | | | | | | | (previous union). The effect is that if a variable is uninitialized along a branch (but initialized along another), at merge points it is considered uninitialized. Previously we had the opposite behavior. The new behavior is more conservative, and more in line with gcc's behavior. llvm-svn: 48689
* Rename "Nodify" to "MakeNode"Ted Kremenek2008-03-213-28/+30
| | | | llvm-svn: 48659
* LiveVariables analysis now uses intersect for the merge of block-level ↵Ted Kremenek2008-03-201-2/+11
| | | | | | | | expression liveness information. The rationale is that a block-level expression cannot be live in a parent block unless it is live in all of the successor blocks. llvm-svn: 48618
* 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-1516-0/+5967
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