]> granicus.if.org Git - clang/commit
PR18793: If we try to EnterTokenStream when our current lexer is a caching
authorRichard Smith <richard-llvm@metafoo.co.uk>
Tue, 23 Sep 2014 21:05:52 +0000 (21:05 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Tue, 23 Sep 2014 21:05:52 +0000 (21:05 +0000)
commitf7a830a6abe71a6dc118fd88f2fa9e71395e1bcc
tree04aaeea07724d1135d30682197958e12238a7df8
parent805726b5386d79ec387312afb6489739697eeb57
PR18793: If we try to EnterTokenStream when our current lexer is a caching
lexer, add the token buffer underneath the caching lexer where possible and
push the tokens directly into the caching lexer otherwise. We previously
put the lexer into a corrupted state where we could not guarantee to provide
the tokens in the right order and would sometimes assert.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@218333 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Lex/Preprocessor.h
lib/Lex/PPLexerChange.cpp
test/Parser/cxx-template-argument.cpp