aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Naroff <snaroff@apple.com>2009-03-02 22:00:56 +0000
committerSteve Naroff <snaroff@apple.com>2009-03-02 22:00:56 +0000
commit32ce8376efb7e0d70e5f7e8fcf685130293f412b (patch)
tree49f2e1d6ff2100a66795bc55f0df4f8e4f950d9f
parent077c1e7377edeef3438ba59cd8151177868b62d4 (diff)
Fix <rdar://problem/6636803> [sema] crash on InterfaceBuilder.
Parser::ParseObjCMethodDefinition(): Make sure we don't exit the BodyScope until ActOnFinishFunctionBody() is complete. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65880 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Parse/ParseObjc.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Parse/ParseObjc.cpp b/lib/Parse/ParseObjc.cpp
index 3aa525b796..193a73f664 100644
--- a/lib/Parse/ParseObjc.cpp
+++ b/lib/Parse/ParseObjc.cpp
@@ -1386,11 +1386,12 @@ Parser::DeclTy *Parser::ParseObjCMethodDefinition() {
FnBody = Actions.ActOnCompoundStmt(BraceLoc, BraceLoc,
MultiStmtArg(Actions), false);
+ // TODO: Pass argument information.
+ Actions.ActOnFinishFunctionBody(MDecl, move(FnBody));
+
// Leave the function body scope.
BodyScope.Exit();
- // TODO: Pass argument information.
- Actions.ActOnFinishFunctionBody(MDecl, move(FnBody));
return MDecl;
}