@@ -74,6 +74,8 @@ void DependencyScanDiagnosticCollector::handleDiagnostic(SourceManager &SM,
74
74
75
75
void DependencyScanDiagnosticCollector::addDiagnostic (
76
76
SourceManager &SM, const DiagnosticInfo &Info) {
77
+ llvm::sys::SmartScopedLock<true > Lock (ScanningDiagnosticConsumerStateLock);
78
+
77
79
// Determine what kind of diagnostic we're emitting.
78
80
llvm::SourceMgr::DiagKind SMKind;
79
81
switch (Info.Kind ) {
@@ -129,12 +131,6 @@ void DependencyScanDiagnosticCollector::addDiagnostic(
129
131
}
130
132
}
131
133
132
- void LockingDependencyScanDiagnosticCollector::addDiagnostic (
133
- SourceManager &SM, const DiagnosticInfo &Info) {
134
- llvm::sys::SmartScopedLock<true > Lock (ScanningDiagnosticConsumerStateLock);
135
- DependencyScanDiagnosticCollector::addDiagnostic (SM, Info);
136
- }
137
-
138
134
swiftscan_diagnostic_set_t *mapCollectedDiagnosticsForOutput (
139
135
const DependencyScanDiagnosticCollector *diagnosticCollector) {
140
136
auto collectedDiagnostics = diagnosticCollector->getDiagnostics ();
@@ -263,7 +259,7 @@ static swiftscan_import_set_t generateHollowDiagnosticOutputImportSet(
263
259
264
260
DependencyScanningTool::DependencyScanningTool ()
265
261
: ScanningService(std::make_unique<SwiftDependencyScanningService>()),
266
- CDC (), Alloc(), Saver(Alloc) {}
262
+ Alloc (), Saver(Alloc) {}
267
263
268
264
llvm::ErrorOr<swiftscan_dependency_graph_t >
269
265
DependencyScanningTool::getDependencies (
@@ -272,7 +268,8 @@ DependencyScanningTool::getDependencies(
272
268
StringRef WorkingDirectory) {
273
269
// There may be errors as early as in instance initialization, so we must ensure
274
270
// we can catch those.
275
- auto ScanDiagnosticConsumer = std::make_shared<DependencyScanDiagnosticCollector>();
271
+ auto ScanDiagnosticConsumer =
272
+ std::make_shared<DependencyScanDiagnosticCollector>();
276
273
277
274
// The primary instance used to scan the query Swift source-code
278
275
auto QueryContextOrErr = initCompilerInstanceForScan (Command,
@@ -329,18 +326,6 @@ DependencyScanningTool::getImports(ArrayRef<const char *> Command,
329
326
return std::move (*DependenciesOrErr);
330
327
}
331
328
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
-
344
329
llvm::ErrorOr<ScanQueryInstance>
345
330
DependencyScanningTool::initCompilerInstanceForScan (
346
331
ArrayRef<const char *> CommandArgs,
@@ -356,10 +341,6 @@ DependencyScanningTool::initCompilerInstanceForScan(
356
341
357
342
// State unique to an individual scan
358
343
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);
363
344
Instance->addDiagnosticConsumer (scannerDiagnosticsCollector.get ());
364
345
365
346
// Basic error checking on the arguments
0 commit comments