commit | 9c8d1c5c64dc22f124509d5ddaa812e08a76d715 | [log] [tgz] |
---|---|---|
author | Richard Smith <richard-llvm@metafoo.co.uk> | Sat Oct 29 22:55:55 2011 +0000 |
committer | Richard Smith <richard-llvm@metafoo.co.uk> | Sat Oct 29 22:55:55 2011 +0000 |
tree | 9e1deb7a74d9210d2760fb1c217d81cdd07dbad5 | |
parent | 35a1f854663884733ff04fe5c0620219ed987493 [diff] [blame] |
Don't crash if a GCC binary conditional is used in a constant expression on an integer-cast pointer value. llvm-svn: 143299
diff --git a/clang/lib/AST/ExprConstant.cpp b/clang/lib/AST/ExprConstant.cpp index e5bff35..f33827f 100644 --- a/clang/lib/AST/ExprConstant.cpp +++ b/clang/lib/AST/ExprConstant.cpp
@@ -1436,6 +1436,10 @@ } bool Success(const CCValue &V, const Expr *E) { + if (V.isLValue()) { + Result = V; + return true; + } return Success(V.getInt(), E); } bool Error(const Expr *E) {