From: Ted Kremenek Date: Wed, 12 Nov 2008 22:46:33 +0000 (+0000) Subject: Add LexIncludeFilename. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=eb41c28b78634ba2165b4aa04e33f3a12e590b0e;p=clang Add LexIncludeFilename. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59187 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Lex/PreprocessorLexer.h b/include/clang/Lex/PreprocessorLexer.h index 7ac1eea20c..12a0cef992 100644 --- a/include/clang/Lex/PreprocessorLexer.h +++ b/include/clang/Lex/PreprocessorLexer.h @@ -61,6 +61,8 @@ protected: PreprocessorLexer() {} + virtual void IndirectLex(Token& Result) = 0; + protected: //===--------------------------------------------------------------------===// @@ -99,7 +101,15 @@ protected: return ConditionalStack.back(); } - unsigned getConditionalStackDepth() const { return ConditionalStack.size(); } + unsigned getConditionalStackDepth() const { return ConditionalStack.size(); } + + //===--------------------------------------------------------------------===// + // Misc. lexing methods. + + /// LexIncludeFilename - After the preprocessor has parsed a #include, lex and + /// (potentially) macro expand the filename. If the sequence parsed is not + /// lexically legal, emit a diagnostic and return a result EOM token. + void LexIncludeFilename(Token &Result); }; } // end namespace clang