diff --git a/lib/Lex/PPDirectives.cpp b/lib/Lex/PPDirectives.cpp
index a1216b1..68f4957 100644
--- a/lib/Lex/PPDirectives.cpp
+++ b/lib/Lex/PPDirectives.cpp
@@ -473,10 +473,15 @@
   // tokens.  For example, this is allowed: "#warning `   'foo".  GCC does
   // collapse multiple consequtive white space between tokens, but this isn't
   // specified by the standard.
-  std::string Message = CurLexer->ReadToEndOfLine();
-
-  unsigned DiagID = isWarning ? diag::pp_hash_warning : diag::err_pp_hash_error;
-  Diag(Tok, DiagID) << Message;
+  
+  if (CurLexer) {
+    std::string Message = CurLexer->ReadToEndOfLine();
+    unsigned DiagID = isWarning ? diag::pp_hash_warning : diag::err_pp_hash_error;
+    Diag(Tok, DiagID) << Message;
+  }
+  else {
+    CurPTHLexer->DiscardToEndOfLine();
+  }    
 }
 
 /// HandleIdentSCCSDirective - Handle a #ident/#sccs directive.
diff --git a/lib/Lex/PPMacroExpansion.cpp b/lib/Lex/PPMacroExpansion.cpp
index 1d4d85a..abb21cb 100644
--- a/lib/Lex/PPMacroExpansion.cpp
+++ b/lib/Lex/PPMacroExpansion.cpp
@@ -111,7 +111,7 @@
     // We have run off the end.  If it's a source file we don't
     // examine enclosing ones (C99 5.1.1.2p4).  Otherwise walk up the
     // macro stack.
-    if (CurLexer)
+    if (CurPPLexer)
       return false;
     for (unsigned i = IncludeMacroStack.size(); i != 0; --i) {
       IncludeStackInfo &Entry = IncludeMacroStack[i-1];
diff --git a/lib/Lex/PTHLexer.cpp b/lib/Lex/PTHLexer.cpp
index d22285c..15d5603 100644
--- a/lib/Lex/PTHLexer.cpp
+++ b/lib/Lex/PTHLexer.cpp
@@ -76,3 +76,10 @@
   Tok = Tokens[NumTokens]; // NumTokens is already adjusted, so this isn't
                            // an overflow.
 }
+
+void PTHLexer::DiscardToEndOfLine() {
+  assert(ParsingPreprocessorDirective && ParsingFilename == false &&
+         "Must be in a preprocessing directive!");
+  
+  assert (0 && "Not implemented.");
+}
diff --git a/lib/Lex/Pragma.cpp b/lib/Lex/Pragma.cpp
index d4c5c6b..0e0841d 100644
--- a/lib/Lex/Pragma.cpp
+++ b/lib/Lex/Pragma.cpp
@@ -193,8 +193,9 @@
 }
 
 void Preprocessor::HandlePragmaMark() {
-  assert(CurLexer && "No current lexer?");
-  CurLexer->ReadToEndOfLine();
+  assert(CurPPLexer && "No current lexer?");
+  if (CurLexer) CurLexer->ReadToEndOfLine();
+  else CurPTHLexer->DiscardToEndOfLine();
 }
 
 
