From: Argyrios Kyrtzidis Date: Sun, 27 Apr 2008 14:10:57 +0000 (+0000) Subject: Call ExitScope before ActOnFinishNamespaceDef. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ff871444421ad9fb8e7ddb73bc422912d9b0ee53;p=clang Call ExitScope before ActOnFinishNamespaceDef. This is the same for functions and it's preferable to have the namespace as DeclContext during ActOnPopScope. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50322 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Parse/ParseDeclCXX.cpp b/lib/Parse/ParseDeclCXX.cpp index 5d49f4dd59..475fb25842 100644 --- a/lib/Parse/ParseDeclCXX.cpp +++ b/lib/Parse/ParseDeclCXX.cpp @@ -74,11 +74,12 @@ Parser::DeclTy *Parser::ParseNamespace(unsigned Context) { while (Tok.isNot(tok::r_brace) && Tok.isNot(tok::eof)) ParseExternalDeclaration(); + // Leave the namespace scope. + ExitScope(); + SourceLocation RBrace = MatchRHSPunctuation(tok::r_brace, LBrace); Actions.ActOnFinishNamespaceDef(NamespcDecl, RBrace); - ExitScope(); - return NamespcDecl; } else {