 Index: tools/clang/include/clang/Lex/Preprocessor.h
 ===================================================================
---- tools/clang/include/clang/Lex/Preprocessor.h	(revision 152030)
+--- tools/clang/include/clang/Lex/Preprocessor.h	(revision 152550)
 +++ tools/clang/include/clang/Lex/Preprocessor.h	(working copy)
 @@ -148,6 +148,10 @@
    /// with this preprocessor.

 
@@ -483,15 +488,17 @@
     // Late template parsing can begin.
     if (getLang().DelayedTemplateParsing)
       Actions.SetLateTemplateParser(LateTemplateParserCallback, this);
+    if (!PP.isIncrementalProcessingEnabled())
+      Actions.ActOnEndOfTranslationUnit();

   ///
Index: tools/clang/lib/Lex/PPLexerChange.cpp
===================================================================
--- tools/clang/lib/Lex/PPLexerChange.cpp	(revision 152550)
+++ tools/clang/lib/Lex/PPLexerChange.cpp	(working copy)
@@ -328,16 +328,18 @@
     CurLexer->BufferPtr = EndPos;
