diff options
author | Chris Lattner <sabre@nondot.org> | 2008-05-09 05:28:21 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-05-09 05:28:21 +0000 |
commit | 039a64212713aebdcc196ea41135c2af4f4386dc (patch) | |
tree | abd365a24485d2b5abf2feac7698838d8927a93b | |
parent | 1284db8d85782c4eb1d41eb02358613c8681f07f (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.cpp | 4 |
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); |