diff options
-rw-r--r-- | include/clang/Parse/Action.h | 2 | ||||
-rw-r--r-- | lib/Parse/Parser.cpp | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/include/clang/Parse/Action.h b/include/clang/Parse/Action.h index ef357c9ae0..55ef67d177 100644 --- a/include/clang/Parse/Action.h +++ b/include/clang/Parse/Action.h @@ -181,6 +181,8 @@ public: return 0; } + virtual void ActOnEndOfTranslationUnit() {} + //===--------------------------------------------------------------------===// // Type Parsing Callbacks. //===--------------------------------------------------------------------===// diff --git a/lib/Parse/Parser.cpp b/lib/Parse/Parser.cpp index ccdf264bd8..417cc10bfb 100644 --- a/lib/Parse/Parser.cpp +++ b/lib/Parse/Parser.cpp @@ -285,7 +285,7 @@ bool Parser::ParseTopLevelDecl(DeclTy*& Result) { /// external-declaration /// translation-unit external-declaration void Parser::ParseTranslationUnit() { - Initialize(); + Initialize(); // pushes a scope. DeclTy *Res; while (!ParseTopLevelDecl(Res)) @@ -293,6 +293,8 @@ void Parser::ParseTranslationUnit() { ExitScope(); assert(CurScope == 0 && "Scope imbalance!"); + + Actions.ActOnEndOfTranslationUnit(); } /// ParseExternalDeclaration: |