From 8bedb7dd3fcb868ad80c54e94e6fe6e2b04604ae Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Thu, 29 Jul 2010 01:31:59 +0000 Subject: Teach GRExprEngine::VisitLValue() about FloatingLiteral, ImaginaryLiteral, and CharacterLiteral. Fixes an assertion failure reported in PR 7675. llvm-svn: 109719 --- clang/lib/Checker/GRExprEngine.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'clang/lib') diff --git a/clang/lib/Checker/GRExprEngine.cpp b/clang/lib/Checker/GRExprEngine.cpp index 73fc9262605..9ee723eb7c5 100644 --- a/clang/lib/Checker/GRExprEngine.cpp +++ b/clang/lib/Checker/GRExprEngine.cpp @@ -1058,6 +1058,9 @@ void GRExprEngine::VisitLValue(const Expr* Ex, ExplodedNode* Pred, // In C++, binding an rvalue to a reference requires to create an object. case Stmt::CXXBoolLiteralExprClass: case Stmt::IntegerLiteralClass: + case Stmt::CharacterLiteralClass: + case Stmt::FloatingLiteralClass: + case Stmt::ImaginaryLiteralClass: CreateCXXTemporaryObject(Ex, Pred, Dst); return; -- cgit v1.2.3