diff options
author | Aaron Ballman <aaron@aaronballman.com> | 2019-01-10 21:22:13 +0000 |
---|---|---|
committer | Aaron Ballman <aaron@aaronballman.com> | 2019-01-10 21:22:13 +0000 |
commit | 898c95d5a806bc78fbad0256e54fa3b79d3e5327 (patch) | |
tree | 597dabc6bd88ed6a75dfbb0cc53e3043770ad51a /include/clang/Lex | |
parent | f1be9f83db361c97bd52f6b6624485ecc63546d0 (diff) | |
download | clang-898c95d5a806bc78fbad0256e54fa3b79d3e5327.tar.gz |
Correct the source range returned from preprocessor callbacks.
This adjusts the source range passed in to the preprocessor callbacks to only include the condition range itself, rather than all of the conditionally skipped tokens.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@350891 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Lex')
-rw-r--r-- | include/clang/Lex/Preprocessor.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/include/clang/Lex/Preprocessor.h b/include/clang/Lex/Preprocessor.h index 64ddb5307f..36cb718570 100644 --- a/include/clang/Lex/Preprocessor.h +++ b/include/clang/Lex/Preprocessor.h @@ -1816,8 +1816,8 @@ public: void CheckEndOfDirective(const char *DirType, bool EnableMacros = false); /// Read and discard all tokens remaining on the current line until - /// the tok::eod token is found. - void DiscardUntilEndOfDirective(); + /// the tok::eod token is found. Returns the range of the skipped tokens. + SourceRange DiscardUntilEndOfDirective(); /// Returns true if the preprocessor has seen a use of /// __DATE__ or __TIME__ in the file so far. @@ -1982,6 +1982,9 @@ private: /// True if the expression contained identifiers that were undefined. bool IncludedUndefinedIds; + + /// The source range for the expression. + SourceRange ExprRange; }; /// Evaluate an integer constant expression that may occur after a |