Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Rename GRState to ProgramState, and cleanup some code formatting along the way. | Ted Kremenek | 2011-08-15 | 1 | -21/+33 |
| | | | | llvm-svn: 137665 | ||||
* | Cleanup various declarations of 'Stmt*' to be 'Stmt *', etc. in libAnalyzer ↵ | Ted Kremenek | 2011-08-12 | 1 | -3/+3 |
| | | | | | | and libStaticAnalyzer[*]. It was highly inconsistent, and very ugly to look at. llvm-svn: 137537 | ||||
* | remove unneeded llvm:: namespace qualifiers on some core types now that ↵ | Chris Lattner | 2011-07-23 | 1 | -3/+3 |
| | | | | | | | | LLVM.h imports them into the clang namespace. llvm-svn: 135852 | ||||
* | Introduce a new AST node describing reference binding to temporaries. | Douglas Gregor | 2011-06-21 | 1 | -8/+19 |
| | | | | | | | | | | | | | | | | | | | | | | | | | MaterializeTemporaryExpr captures a reference binding to a temporary value, making explicit that the temporary value (a prvalue) needs to be materialized into memory so that its address can be used. The intended AST invariant here is that a reference will always bind to a glvalue, and MaterializeTemporaryExpr will be used to convert prvalues into glvalues for that binding to happen. For example, given const int& r = 1.0; The initializer of "r" will be a MaterializeTemporaryExpr whose subexpression is an implicit conversion from the double literal "1.0" to an integer value. IR generation benefits most from this new node, since it was previously guessing (badly) when to materialize temporaries for the purposes of reference binding. There are likely more refactoring and cleanups we could perform there, but the introduction of MaterializeTemporaryExpr fixes PR9565, a case where IR generation would effectively bind a const reference directly to a bitfield in a struct. Addresses <rdar://problem/9552231>. llvm-svn: 133521 | ||||
* | Support for C++11 (non-template) alias declarations. | Richard Smith | 2011-04-15 | 1 | -1/+1 |
| | | | | llvm-svn: 129567 | ||||
* | Don't have side-effects (or rather non-trivial computation) in StringSwitch ↵ | Ted Kremenek | 2011-03-12 | 1 | -6/+9 |
| | | | | | | "cases." llvm-svn: 127528 | ||||
* | Add initial version of "IteratorsChecker", a checker to find misues uses of ↵ | Ted Kremenek | 2011-03-12 | 1 | -0/+579 |
C++ iterators. This checker was created by Jim Goodnow II, and I migrated it to the new Checker interface (recent changes by Argiris). llvm-svn: 127525 |