PTHLexer now owns the Token vector.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60136 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Lex/PTHLexer.cpp b/lib/Lex/PTHLexer.cpp
index 21fb983..bc9e714 100644
--- a/lib/Lex/PTHLexer.cpp
+++ b/lib/Lex/PTHLexer.cpp
@@ -16,16 +16,8 @@
#include "clang/Basic/TokenKinds.h"
using namespace clang;
-PTHLexer::PTHLexer(Preprocessor& pp, SourceLocation fileloc,
- const Token *TokArray, unsigned NumTokens)
- : PreprocessorLexer(&pp, fileloc),
- Tokens(TokArray),
- LastTokenIdx(NumTokens - 1),
- CurTokenIdx(0) {
-
- assert(NumTokens >= 1);
- assert(Tokens[LastTokenIdx].is(tok::eof));
-}
+PTHLexer::PTHLexer(Preprocessor& pp, SourceLocation fileloc)
+ : PreprocessorLexer(&pp, fileloc), CurTokenIdx(0) {}
Token PTHLexer::GetToken() {
Token Tok = Tokens[CurTokenIdx];
@@ -104,7 +96,8 @@
}
void PTHLexer::setEOF(Token& Tok) {
- Tok = Tokens[LastTokenIdx];
+ assert(!Tokens.empty());
+ Tok = Tokens[Tokens.size()-1];
}
void PTHLexer::DiscardToEndOfLine() {