From: Chris Lattner Date: Mon, 26 Jan 2009 05:30:54 +0000 (+0000) Subject: a few minor cleanups X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=099dd05b579ccefa97bd4f4a3088d4c262f080e4;p=clang a few minor cleanups git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63000 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Lex/PPDirectives.cpp b/lib/Lex/PPDirectives.cpp index 4ab293b9b7..1c8f7f1f3a 100644 --- a/lib/Lex/PPDirectives.cpp +++ b/lib/Lex/PPDirectives.cpp @@ -629,10 +629,12 @@ void Preprocessor::HandleLineDirective(Token &Tok) { // FIXME: do something with the #line info. } - +/// HandleUserDiagnosticDirective - Handle a #warning or #error directive. +/// void Preprocessor::HandleUserDiagnosticDirective(Token &Tok, bool isWarning) { - if (!CurLexer) + // PTH doesn't emit #warning or #error directives. + if (CurPTHLexer) return CurPTHLexer->DiscardToEndOfLine(); // Read the rest of the line raw. We do this because we don't want macros @@ -661,6 +663,8 @@ void Preprocessor::HandleIdentSCCSDirective(Token &Tok) { if (StrTok.isNot(tok::string_literal) && StrTok.isNot(tok::wide_string_literal)) { Diag(StrTok, diag::err_pp_malformed_ident); + if (StrTok.isNot(tok::eom)) + DiscardUntilEndOfDirective(); return; }