aboutsummaryrefslogtreecommitdiff
path: root/lib/Lex/PTHLexer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Lex/PTHLexer.cpp')
-rw-r--r--lib/Lex/PTHLexer.cpp18
1 files changed, 14 insertions, 4 deletions
diff --git a/lib/Lex/PTHLexer.cpp b/lib/Lex/PTHLexer.cpp
index e9d6d4794f..5adcd9f6a1 100644
--- a/lib/Lex/PTHLexer.cpp
+++ b/lib/Lex/PTHLexer.cpp
@@ -80,11 +80,21 @@ void PTHLexer::setEOF(Token& Tok) {
void PTHLexer::DiscardToEndOfLine() {
assert(ParsingPreprocessorDirective && ParsingFilename == false &&
"Must be in a preprocessing directive!");
- assert (0 && "Not implemented.");
+
+ // Already at end-of-file?
+ if (CurToken == NumTokens)
+ return;
+
+ // Find the first token that is not the start of the *current* line.
+ for ( ++CurToken; CurToken != NumTokens ; ++CurToken )
+ if (Tokens[CurToken].isAtStartOfLine())
+ return;
}
-unsigned PTHLexer::isNextPPTokenLParen() {
- assert (0 && "Not implemented.");
- return 0;
+unsigned PTHLexer::isNextPPTokenLParen() {
+ if (CurToken == NumTokens)
+ return 2;
+
+ return Tokens[CurToken].is(tok::l_paren);
}