aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-05-09 05:28:21 +0000
committerChris Lattner <sabre@nondot.org>2008-05-09 05:28:21 +0000
commit039a64212713aebdcc196ea41135c2af4f4386dc (patch)
treeabd365a24485d2b5abf2feac7698838d8927a93b
parent1284db8d85782c4eb1d41eb02358613c8681f07f (diff)
Don't call into objc front-end when not parsing objc code. This avoids
crashes because objc types aren't set up right. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50884 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Parse/ParseExpr.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Parse/ParseExpr.cpp b/lib/Parse/ParseExpr.cpp
index dff7c14524..523f647341 100644
--- a/lib/Parse/ParseExpr.cpp
+++ b/lib/Parse/ParseExpr.cpp
@@ -586,7 +586,9 @@ Parser::ExprResult Parser::ParseCastExpression(bool isUnaryExpression) {
}
case tok::l_square:
// These can be followed by postfix-expr pieces.
- return ParsePostfixExpressionSuffix(ParseObjCMessageExpression());
+ if (getLang().ObjC1)
+ return ParsePostfixExpressionSuffix(ParseObjCMessageExpression());
+ // FALL THROUGH.
default:
Diag(Tok, diag::err_expected_expression);
return ExprResult(true);