diff options
author | Chris Lattner <sabre@nondot.org> | 2009-01-27 07:57:44 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-01-27 07:57:44 +0000 |
commit | b9c3f966b103f7cfe8e5e60007c4c8b38f7298eb (patch) | |
tree | d10a3e7c028ae1ae13bef1b61f7da4aff02ef207 /lib/Lex/Preprocessor.cpp | |
parent | 52c29081281955d3db9e11d10573b2d38f709099 (diff) |
Introduce a new PresumedLoc class to represent the concept of a location
as reported to the user and as manipulated by #line. This is what __FILE__,
__INCLUDE_LEVEL__, diagnostics and other things should follow (but not
dependency generation!).
This patch also includes several cleanups along the way:
- SourceLocation now has a dump method, and several other places
that did similar things now use it.
- I cleaned up some code in AnalysisConsumer, but it should probably be
simplified further now that NamedDecl is better.
- TextDiagnosticPrinter is now simplified and cleaned up a bit.
This patch is a prerequisite for #line, but does not actually provide
any #line functionality.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63098 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Lex/Preprocessor.cpp')
-rw-r--r-- | lib/Lex/Preprocessor.cpp | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/lib/Lex/Preprocessor.cpp b/lib/Lex/Preprocessor.cpp index e6bf1777a8..48fdd68ab9 100644 --- a/lib/Lex/Preprocessor.cpp +++ b/lib/Lex/Preprocessor.cpp @@ -142,17 +142,7 @@ void Preprocessor::DumpToken(const Token &Tok, bool DumpFlags) const { } void Preprocessor::DumpLocation(SourceLocation Loc) const { - SourceLocation LogLoc = SourceMgr.getInstantiationLoc(Loc); - llvm::cerr << SourceMgr.getSourceName(LogLoc) << ':' - << SourceMgr.getLineNumber(LogLoc) << ':' - << SourceMgr.getColumnNumber(LogLoc); - - SourceLocation SpellingLoc = SourceMgr.getSpellingLoc(Loc); - if (SpellingLoc != LogLoc) { - llvm::cerr << " <SpellingLoc="; - DumpLocation(SpellingLoc); - llvm::cerr << ">"; - } + Loc.dump(SourceMgr); } void Preprocessor::DumpMacro(const MacroInfo &MI) const { |