aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-12-01Make sure __null test runs in both 32- and 64-bit. Thanks AndersDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60360 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Parse the exception-specification throw(...), a Microsoft extensionDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60359 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Add the test for __nullDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60357 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Define NULL to __null in C++, so that it's guaranteed to have the same size ↵Douglas Gregor
as a pointer git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60355 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Generate the correct results for the comma expression. Fixes PR3123.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60334 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Revert change that made isNullPointerConstant start emitting warnings. We ↵Anders Carlsson
don't want that :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60333 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Fix test. (0 && (a(),1)) is a valid I-C-E according to C99.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60331 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Change more code over to using the new Expr::EvaluateAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60324 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Change more code over to using the new Expr::EvaluateAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60323 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Use the new Expr::EvaluateAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60321 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Remove dead code.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60320 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Add Sema::isNullPointerConstant which extwarns if necessary. Use it in ↵Anders Carlsson
Sema::CheckConditionalOperands. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60319 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Add a new variant of isNullConstantExpr that returns an EvalResult.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60318 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Use VerifyIntegerConstantExpression for case values.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60317 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-01Emit the correct diagnostic when a comma is in an ICE.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60316 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Add Sema::VerifyIntegerConstantExpressionAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60305 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Change the diagnostics that the evaluator reports to be of type NOTE.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60301 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Replace the isEvaluated bool with a ShortCircuit int, making it easier to ↵Anders Carlsson
handle recursion git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60300 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Pass the expression to the Error and Extension methods.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60299 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Add a new variant of Evaluate and reimplement the old Evaluate in terms of ↵Anders Carlsson
the new. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60298 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30General cleanup, evaluate the RHS of a logical op even if the LHS will give ↵Anders Carlsson
us the result. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60297 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30EvalInfo now holds a reference to an EvalResult struct.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60296 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Add Expr::EvalResult struct. (Not used just yet)Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60295 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30remove a test case that causes compiler warning.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60282 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Add test for initializing array with string literal.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60281 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Add support for initializing array with string literal.Zhongxing Xu
This fixes PR3127 http://llvm.org/bugs/show_bug.cgi?id=3127 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60280 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Fix for PR2969: generate a memcpy from a constant for constant Eli Friedman
initializers. llvm-gcc appears to be more aggressive, but incorrect, for constructs like "const int a[] = {1,2,3};"; that said, current optimizers will do the appropriate optimizations when safe. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60270 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-30Minor update to CMake build system.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60269 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-29CXXFunctionalCastExpr inherits from ExplicitCastExpr.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60249 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-29To be consistent, make the index of the ElementRegion always signed.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60248 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-29Implement the GNU __null extensionDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60235 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28Switch QualType to use llvm::PointerIntPair internally to do the pointerChris Lattner
bitmangling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60226 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28Fix a serious bug.Zhongxing Xu
When initialized, the index of the ElementRegion was unsigned. But the index value of the ArraySubscriptExpr is signed. This inconsistency caused the value of the array element retrieved to be UnknownVal despite it was initialized to symbolic. This is only a hack. Real fix of this problem is required. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60207 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28Code cleanup. No functional change.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60206 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28Use std::make_pair instead of std::pair's ctor.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60205 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28Enable the GRStateManager to do something when we finish a path. For example, Zhongxing Xu
the ConstraintManager can print its internal state before its solver instance is destroyed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60204 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27remove dead diagChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60181 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Fix order of evaluation.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60160 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27ImmutableList::getInternalPointer() returns a const ImmutableListImpl<T>* ↵Zhongxing Xu
pointer, which must be converted to void* explicitly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60152 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Factory objects should not be temporary. It caches all objects in the set.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60151 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27RegionViewMap factory is actually not used. All GDMs should use factories fromZhongxing Xu
GDMContext. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60150 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Test commit.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60147 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Add comments.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60146 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Add license comments.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60144 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Add support for pluggable components of static analyzer.Zhongxing Xu
- Creator function pointers are saved in ManagerRegistry. - The Register* class is used to notify ManagerRegistry new module is available. - AnalysisManager queries ManagerRegistry for configurable module. Then it passes them to GRExprEngine, in turn to GRStateManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60143 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Add implicit conversions for Objective-C qualified ids, e.g.,Douglas Gregor
id<P0> The intended overloading behavior of these entities isn't entirely clear, and GCC seems to have some strange limitations (e.g., the inability to overload on id<P0> vs. id<P1>). We'll want to revisit these semantics and determine just how Objective-C++ overloading should really work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60142 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Cleanup formattingDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60140 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Don't complain about block pointer to void* conversionsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60138 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27PTHLexer now owns the Token vector.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60136 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-27Support block pointer conversions in C++. I'm storing the test case locally ↵Douglas Gregor
until we can enable blocks in C++ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60133 91177308-0d34-0410-b5e6-96231b3b80d8