diff options
author | Douglas Gregor <dgregor@apple.com> | 2010-11-09 05:28:47 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2010-11-09 05:28:47 +0000 |
commit | d1ea3f0d29dd9e18c42d17ef281c744b5bea6b92 (patch) | |
tree | 3580c7cb3ab4b9e937bd8707cb989419f836ac62 /clang/tools/libclang/CIndexDiagnostic.cpp | |
parent | c1351cac17c2357866132aeaa69706fc84bd4201 (diff) | |
download | bcm5719-llvm-d1ea3f0d29dd9e18c42d17ef281c744b5bea6b92.tar.gz bcm5719-llvm-d1ea3f0d29dd9e18c42d17ef281c744b5bea6b92.zip |
Introduce clang_getSpellingLocation() into libclang, to provide the
location where we're spelling a token even within a
macro. clang_getInstantiationLocation() tells where we instantiated
the macro.
I'm still not thrilled with the CXSourceLocation/CXSourceRange APIs,
since they gloss over macro-instantiation information.
llvm-svn: 118492
Diffstat (limited to 'clang/tools/libclang/CIndexDiagnostic.cpp')
-rw-r--r-- | clang/tools/libclang/CIndexDiagnostic.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/clang/tools/libclang/CIndexDiagnostic.cpp b/clang/tools/libclang/CIndexDiagnostic.cpp index 0766548418e..036a28b5387 100644 --- a/clang/tools/libclang/CIndexDiagnostic.cpp +++ b/clang/tools/libclang/CIndexDiagnostic.cpp @@ -64,8 +64,8 @@ CXString clang_formatDiagnostic(CXDiagnostic Diagnostic, unsigned Options) { // and source ranges. CXFile File; unsigned Line, Column; - clang_getInstantiationLocation(clang_getDiagnosticLocation(Diagnostic), - &File, &Line, &Column, 0); + clang_getSpellingLocation(clang_getDiagnosticLocation(Diagnostic), + &File, &Line, &Column, 0); if (File) { CXString FName = clang_getFileName(File); Out << clang_getCString(FName) << ":" << Line << ":"; @@ -81,11 +81,11 @@ CXString clang_formatDiagnostic(CXDiagnostic Diagnostic, unsigned Options) { CXSourceRange Range = clang_getDiagnosticRange(Diagnostic, I); unsigned StartLine, StartColumn, EndLine, EndColumn; - clang_getInstantiationLocation(clang_getRangeStart(Range), - &StartFile, &StartLine, &StartColumn, - 0); - clang_getInstantiationLocation(clang_getRangeEnd(Range), - &EndFile, &EndLine, &EndColumn, 0); + clang_getSpellingLocation(clang_getRangeStart(Range), + &StartFile, &StartLine, &StartColumn, + 0); + clang_getSpellingLocation(clang_getRangeEnd(Range), + &EndFile, &EndLine, &EndColumn, 0); if (StartFile != EndFile || StartFile != File) continue; |