summaryrefslogtreecommitdiffstats
path: root/clang/lib/Checker/BugReporter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Refactored BugReporter to refer to EndNode as ErrorNode. We currently make ↵Tom Care2010-09-161-8/+8
| | | | | | the assumption that EndNode == ErrorNode, but upcoming changes will break this. llvm-svn: 114065
* Introduce new CFGElement hierarchy to support C++ CFG, based on Marcin's patchZhongxing Xu2010-09-161-8/+8
| | | | | | and discussions with Ted and Jordy. llvm-svn: 114056
* Use FindReportInEquivalenceClass to identify all the nodes used for the ↵Ted Kremenek2010-09-091-34/+54
| | | | | | | | | | trimmed graph (in BugReporter). This fixes a problem where a leak that happened to occur on both an exit() path and a non-exit() path was getting reported with the exit() path (which users don't care about). This fixes: <rdar://problem/8331641> leak reports should not show paths that end with exit() (but ones that don't end with exit()) llvm-svn: 113524
* GCC didn't care for my attempt at API compatibility, so brute-force everythingJohn McCall2010-08-251-4/+4
| | | | | | to the new constants. llvm-svn: 112047
* zap dead code.Chris Lattner2010-08-181-23/+0
| | | | llvm-svn: 111347
* Constify all references to Stmt* and CFGBlock* in libChecker.Zhongxing Xu2010-07-201-10/+10
| | | | llvm-svn: 108811
* Remove Decl::getCompoundBody().Argyrios Kyrtzidis2010-07-071-1/+1
| | | | | | | | This has 2 (slight) advantages: -Make explicit at getBody()'s callsite that we expect/handle only CompoundStmt and not CXXTryStmt. -Better tracking of Decl::getBody()'s callsites. llvm-svn: 107771
* ExplodedGraph never uses ASTContext, remove it.Zhongxing Xu2010-07-011-1/+1
| | | | llvm-svn: 107388
* Add raw_ostream operators to NamedDecl for convenience. Switch over all ↵Benjamin Kramer2010-04-171-1/+1
| | | | | | | | users of getNameAsString on a stream. The next step is to print the name directly into the stream, avoiding a temporary std::string copy. llvm-svn: 101632
* Fix PR 6725. It looks like the copy constructor gets elided during inlining.Zhongxing Xu2010-04-061-1/+1
| | | | | | This bug only shows up with GCC 4.4.1 Release-Asserts build. llvm-svn: 100516
* Checker: random include cleanup.Benjamin Kramer2010-03-271-0/+1
| | | | llvm-svn: 99731
* merge line.Zhongxing Xu2010-03-231-4/+1
| | | | llvm-svn: 99259
* Delete the new visitor if an old one already exists.Ted Kremenek2010-03-211-1/+3
| | | | llvm-svn: 99114
* Reapply r99024 (but with the memory issue now fixed).Ted Kremenek2010-03-201-0/+2
| | | | llvm-svn: 99064
* Check if a BugReporterVisitor has already been added to a BugReporterContext.Ted Kremenek2010-03-201-0/+15
| | | | | | This avoids redundant diagnostics. llvm-svn: 99063
* Revert r99024, "Augment path diagnostics to include displaying when a messageDaniel Dunbar2010-03-201-2/+0
| | | | | | expression", statistical evidence indicates it has some kind of memory error. llvm-svn: 99040
* Augment path diagnostics to include displaying when a message expressionTed Kremenek2010-03-201-0/+2
| | | | | | is not evaluated because the receiver is nil. llvm-svn: 99024
* Revert 95541.Ted Kremenek2010-02-081-2/+2
| | | | llvm-svn: 95545
* Rename: GRState::getSVal(Stmt*) => getExprVal(),Zhongxing Xu2010-02-081-2/+2
| | | | | | GRState::getSVal(MemRegion*) => Load(). llvm-svn: 95541
* Move BugReporter.h, PathDiagnostic.h, and BugType.h to ↵Ted Kremenek2010-01-251-2/+2
| | | | | | 'include/Checker/BugReporter' llvm-svn: 94428
* Split libAnalysis into two libraries: libAnalysis and libChecker.Ted Kremenek2010-01-251-0/+1879
(1) libAnalysis is a generic analysis library that can be used by Sema. It defines the CFG, basic dataflow analysis primitives, and inexpensive flow-sensitive analyses (e.g. LiveVariables). (2) libChecker contains the guts of the static analyzer, incuding the path-sensitive analysis engine and domain-specific checks. Now any clients that want to use the frontend to build their own tools don't need to link in the entire static analyzer. This change exposes various obvious cleanups that can be made to the layout of files and headers in libChecker. More changes pending. :) This change also exposed a layering violation between AnalysisContext and MemRegion. BlockInvocationContext shouldn't explicitly know about BlockDataRegions. For now I've removed the BlockDataRegion* from BlockInvocationContext (removing context-sensitivity; although this wasn't used yet). We need to have a better way to extend BlockInvocationContext (and any LocationContext) to add context-sensitivty. llvm-svn: 94406
OpenPOWER on IntegriCloud