summaryrefslogtreecommitdiffstats
path: root/clang/lib/Checker/AggExprVisitor.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [analyzer] Refactoring: lib/Checker -> lib/GR and libclangChecker -> ↵Argyrios Kyrtzidis2010-12-221-62/+0
| | | | | | libclangGRCore llvm-svn: 122421
* [analyzer] Refactoring: include/clang/Checker -> include/clang/GRArgyrios Kyrtzidis2010-12-221-1/+1
| | | | llvm-svn: 122420
* Start migration of static analyzer to using theTed Kremenek2010-12-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implicit lvalue-to-rvalue casts that John McCall recently introduced. This causes a whole bunch of logic in the analyzer for handling lvalues to vanish. It does, however, raise a few issues in the analyzer w.r.t to modeling various constructs (e.g., field accesses to compound literals). The .c/.m analysis test cases that fail are due to a missing lvalue-to-rvalue cast that will get introduced into the AST. The .cpp failures were more than I could investigate in one go, and the patch was already getting huge. I have XFAILED some of these tests, and they should obviously be further investigated. Some highlights of this patch include: - CFG no longer requires an lvalue bit for CFGElements - StackFrameContext doesn't need an 'asLValue' flag - The "VisitLValue" path from GRExprEngine has been eliminated. Besides the test case failures (XFAILed), there are surely other bugs that are fallout from this change. llvm-svn: 121960
* Let StackFrameContext represent if the call expr is evaluated as lvalue.Zhongxing Xu2010-11-241-1/+1
| | | | | | This is required for supporting const reference to temporary objects. llvm-svn: 120093
* Now initializer of C++ record type is visited as block-level expr. Zhongxing Xu2010-11-011-6/+6
| | | | | | | Let the destination of AggExprVisitor be an explicit MemRegion. Reenable the test case. llvm-svn: 117908
* Add comments.Zhongxing Xu2010-08-291-0/+7
| | | | llvm-svn: 112414
* GCC didn't care for my attempt at API compatibility, so brute-force everythingJohn McCall2010-08-251-2/+2
| | | | | | to the new constants. llvm-svn: 112047
* Improve C++ constructor handling.Zhongxing Xu2010-04-011-0/+1
| | | | llvm-svn: 100080
* Add a AggExprVisitor class. It contains lots of boilerZhongxing Xu2010-03-231-0/+54
plate code for evaluating expressions of C++ class type. llvm-svn: 99267
OpenPOWER on IntegriCloud