From d4131ce92cb2e0e656100b1ec1abf2d4ffce8ab0 Mon Sep 17 00:00:00 2001 From: Eberhard Graether Date: Mon, 29 Aug 2016 23:30:59 +0200 Subject: [PATCH] data: Fixed error locations not saved with absolute filepaths in CDB projects --- src/lib_parser/data/parser/cxx/CxxDiagnosticConsumer.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lib_parser/data/parser/cxx/CxxDiagnosticConsumer.cpp b/src/lib_parser/data/parser/cxx/CxxDiagnosticConsumer.cpp index bee4dca2..29c74ad2 100644 --- a/src/lib_parser/data/parser/cxx/CxxDiagnosticConsumer.cpp +++ b/src/lib_parser/data/parser/cxx/CxxDiagnosticConsumer.cpp @@ -1,6 +1,7 @@ #include "data/parser/cxx/CxxDiagnosticConsumer.h" #include "clang/Basic/SourceManager.h" +#include "clang/Tooling/Tooling.h" #include "data/parser/ParseLocation.h" #include "data/parser/ParserClient.h" @@ -73,7 +74,7 @@ void CxxDiagnosticConsumer::HandleDiagnostic(clang::DiagnosticsEngine::Level lev const clang::SourceManager& sourceManager = info.getSourceManager(); clang::PresumedLoc presumedLocation = sourceManager.getPresumedLoc(info.getLocation()); - filePath = presumedLocation.getFilename(); + filePath = clang::tooling::getAbsolutePath(presumedLocation.getFilename()); line = presumedLocation.getLine(); column = presumedLocation.getColumn(); }