@@ -74,6 +74,8 @@ void DependencyScanDiagnosticCollector::handleDiagnostic(SourceManager &SM,
7474
7575void DependencyScanDiagnosticCollector::addDiagnostic (
7676 SourceManager &SM, const DiagnosticInfo &Info) {
77+ llvm::sys::SmartScopedLock<true > Lock (ScanningDiagnosticConsumerStateLock);
78+
7779 // Determine what kind of diagnostic we're emitting.
7880 llvm::SourceMgr::DiagKind SMKind;
7981 switch (Info.Kind ) {
@@ -129,12 +131,6 @@ void DependencyScanDiagnosticCollector::addDiagnostic(
129131 }
130132}
131133
132- void LockingDependencyScanDiagnosticCollector::addDiagnostic (
133- SourceManager &SM, const DiagnosticInfo &Info) {
134- llvm::sys::SmartScopedLock<true > Lock (ScanningDiagnosticConsumerStateLock);
135- DependencyScanDiagnosticCollector::addDiagnostic (SM, Info);
136- }
137-
138134swiftscan_diagnostic_set_t *mapCollectedDiagnosticsForOutput (
139135 const DependencyScanDiagnosticCollector *diagnosticCollector) {
140136 auto collectedDiagnostics = diagnosticCollector->getDiagnostics ();
@@ -263,7 +259,7 @@ static swiftscan_import_set_t generateHollowDiagnosticOutputImportSet(
263259
264260DependencyScanningTool::DependencyScanningTool ()
265261 : ScanningService(std::make_unique<SwiftDependencyScanningService>()),
266- CDC (), Alloc(), Saver(Alloc) {}
262+ Alloc (), Saver(Alloc) {}
267263
268264llvm::ErrorOr<swiftscan_dependency_graph_t >
269265DependencyScanningTool::getDependencies (
@@ -272,7 +268,8 @@ DependencyScanningTool::getDependencies(
272268 StringRef WorkingDirectory) {
273269 // There may be errors as early as in instance initialization, so we must ensure
274270 // we can catch those.
275- auto ScanDiagnosticConsumer = std::make_shared<DependencyScanDiagnosticCollector>();
271+ auto ScanDiagnosticConsumer =
272+ std::make_shared<DependencyScanDiagnosticCollector>();
276273
277274 // The primary instance used to scan the query Swift source-code
278275 auto QueryContextOrErr = initCompilerInstanceForScan (Command,
@@ -329,18 +326,6 @@ DependencyScanningTool::getImports(ArrayRef<const char *> Command,
329326 return std::move (*DependenciesOrErr);
330327}
331328
332- std::vector<
333- DependencyScanDiagnosticCollector::ScannerDiagnosticInfo>
334- DependencyScanningTool::getDiagnostics () {
335- llvm::sys::SmartScopedLock<true > Lock (DependencyScanningToolStateLock);
336- return CDC.Diagnostics ;
337- }
338-
339- void DependencyScanningTool::resetDiagnostics () {
340- llvm::sys::SmartScopedLock<true > Lock (DependencyScanningToolStateLock);
341- CDC.reset ();
342- }
343-
344329llvm::ErrorOr<ScanQueryInstance>
345330DependencyScanningTool::initCompilerInstanceForScan (
346331 ArrayRef<const char *> CommandArgs,
@@ -356,10 +341,6 @@ DependencyScanningTool::initCompilerInstanceForScan(
356341
357342 // State unique to an individual scan
358343 auto Instance = std::make_unique<CompilerInstance>();
359-
360- // FIXME: The shared CDC must be deprecated once all clients have switched
361- // to using per-scan diagnostic output embedded in the `swiftscan_dependency_graph_s`
362- Instance->addDiagnosticConsumer (&CDC);
363344 Instance->addDiagnosticConsumer (scannerDiagnosticsCollector.get ());
364345
365346 // Basic error checking on the arguments
0 commit comments