diff --git a/lldb/source/Symbol/SwiftASTContext.cpp b/lldb/source/Symbol/SwiftASTContext.cpp index b5b611a44f0cd..105f5a7e1e128 100644 --- a/lldb/source/Symbol/SwiftASTContext.cpp +++ b/lldb/source/Symbol/SwiftASTContext.cpp @@ -2853,13 +2853,8 @@ class StoringDiagnosticConsumer : public swift::DiagnosticConsumer { m_ast_context.GetDiagnosticEngine().takeConsumers(); } - virtual void - handleDiagnostic(swift::SourceManager &source_mgr, - swift::SourceLoc source_loc, swift::DiagnosticKind kind, - llvm::StringRef formatString, - llvm::ArrayRef formatArgs, - const swift::DiagnosticInfo &info, - const swift::SourceLoc bufferIndirectlyCausingDiagnostic) { + virtual void handleDiagnostic(swift::SourceManager &source_mgr, + const swift::DiagnosticInfo &info) { llvm::StringRef bufferName = ""; unsigned bufferID = 0; std::pair line_col = {0, 0}; @@ -2867,10 +2862,11 @@ class StoringDiagnosticConsumer : public swift::DiagnosticConsumer { llvm::SmallString<256> text; { llvm::raw_svector_ostream out(text); - swift::DiagnosticEngine::formatDiagnosticText(out, formatString, - formatArgs); + swift::DiagnosticEngine::formatDiagnosticText(out, info.FormatString, + info.FormatArgs); } + swift::SourceLoc source_loc = info.Loc; if (source_loc.isValid()) { bufferID = source_mgr.findBufferContainingLoc(source_loc); bufferName = source_mgr.getDisplayNameForLoc(source_loc); @@ -2884,7 +2880,7 @@ class StoringDiagnosticConsumer : public swift::DiagnosticConsumer { // we want to use its fixits: bool use_fixits = false; llvm::SourceMgr::DiagKind source_mgr_kind; - switch (kind) { + switch (info.Kind) { default: case swift::DiagnosticKind::Error: source_mgr_kind = llvm::SourceMgr::DK_Error; @@ -2921,23 +2917,23 @@ class StoringDiagnosticConsumer : public swift::DiagnosticConsumer { if (message_ref.empty()) m_diagnostics.push_back(RawDiagnostic( - text.str(), kind, bufferName, bufferID, line_col.first, + text.str(), info.Kind, bufferName, bufferID, line_col.first, line_col.second, use_fixits ? info.FixIts : llvm::ArrayRef())); else m_diagnostics.push_back(RawDiagnostic( - message_ref, kind, bufferName, bufferID, line_col.first, + message_ref, info.Kind, bufferName, bufferID, line_col.first, line_col.second, use_fixits ? info.FixIts : llvm::ArrayRef())); } else { m_diagnostics.push_back(RawDiagnostic( - text.str(), kind, bufferName, bufferID, line_col.first, + text.str(), info.Kind, bufferName, bufferID, line_col.first, line_col.second, llvm::ArrayRef())); } - if (kind == swift::DiagnosticKind::Error) + if (info.Kind == swift::DiagnosticKind::Error) m_num_errors++; }