summaryrefslogtreecommitdiffstats
path: root/clang/lib/StaticAnalyzer/Core/CXXExprEngine.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Rename CXXExprEngine.cpp to ExprEngineCXX.cpp.Ted Kremenek2011-08-201-371/+0
| | | | llvm-svn: 138193
* Rename GRState to ProgramState, and cleanup some code formatting along the way.Ted Kremenek2011-08-151-8/+8
| | | | llvm-svn: 137665
* Cleanup: remove GetState() wrapper from ExprEngine, not needed as of r137273.Anna Zaks2011-08-101-7/+7
| | | | llvm-svn: 137279
* [analyzer] fix handling of MaterializeTemporaryExpr by binding the result ↵Ted Kremenek2011-07-281-6/+7
| | | | | | | | value to the proper expression. llvm-svn: 136412
* remove unneeded llvm:: namespace qualifiers on some core types now that ↵Chris Lattner2011-07-231-3/+3
| | | | | | | | LLVM.h imports them into the clang namespace. llvm-svn: 135852
* Modify some deleted function methods to better reflect reality:Alexis Hunt2011-05-061-2/+2
| | | | | | | | | | | | | | | | | | | | - New isDefined() function checks for deletedness - isThisDeclarationADefinition checks for deletedness - New doesThisDeclarationHaveABody() does what isThisDeclarationADefinition() used to do - The IsDeleted bit is not propagated across redeclarations - isDeleted() now checks the canoncial declaration - New isDeletedAsWritten() does what it says on the tin. - isUserProvided() now correct (thanks Richard!) This fixes the bug that we weren't catching void foo() = delete; void foo() {} as being a redefinition. llvm-svn: 131013
* fix a bunch of comment typos found by codespell. Patch byChris Lattner2011-04-151-1/+1
| | | | | | Luis Felipe Strano Moraes! llvm-svn: 129559
* static analyzer: invalidate by-ref arguments passed to constructors in a ↵Ted Kremenek2011-04-121-3/+31
| | | | | | 'new' expression. llvm-svn: 129349
* Start overhauling static analyzer support for C++ constructors. The ↵Ted Kremenek2011-04-081-34/+102
| | | | | | | | | inlining support isn't complete, and needs to be reworked to model CallEnter/CallExit (just like all other calls). For now, treat constructors mostly like other function calls, making the analysis of C++ code just a little more useful. llvm-svn: 129166
* Teach static analyzer about the basics of handling new[]. We still don't ↵Ted Kremenek2011-03-311-9/+12
| | | | | | simulate constructors, but at least the analyzer doesn't think the return value is uninitialized. llvm-svn: 128611
* Begin reworking static analyzer support for C++ method calls. The current ↵Ted Kremenek2011-03-301-83/+28
| | | | | | | | | | | logic was divorced from how we process ordinary function calls, had a tremendous about of redundancy, and relied strictly on inlining behavior (which was incomplete) to provide semantics instead of falling back to the conservative analysis we use for C functions. This is a significant step into making C++ analyzer support more useful. llvm-svn: 128557
* Fix comments, and force auto progagation in VisitAggExpr.Ted Kremenek2011-03-121-1/+4
| | | | llvm-svn: 127524
* [analyzer] Remove checker V1 registration and running from ExprEngine.Argyrios Kyrtzidis2011-03-011-2/+3
| | | | llvm-svn: 126724
* Rename 'InvalidateRegions()' to 'invalidateRegions()'.Ted Kremenek2011-02-111-1/+1
| | | | llvm-svn: 125395
* Split 'include/clang/StaticAnalyzer' into ↵Ted Kremenek2011-02-101-2/+2
| | | | | | | | 'include/clang/StaticAnalyzer/Core' and 'include/clang/StaticAnalyzer/Checkers'. This layout matches lib/StaticAnalyzer, which corresponds to two StaticAnalyzer libraries. llvm-svn: 125251
* [analyzer] Move the files in lib/StaticAnalyzer to lib/StaticAnalyzer/Core.Argyrios Kyrtzidis2011-02-081-0/+322
Eventually there will also be a lib/StaticAnalyzer/Frontend that will handle initialization and checker registration. Yet another library to avoid cyclic dependencies between Core and Checkers. llvm-svn: 125124
OpenPOWER on IntegriCloud