From 93023c88145280b3c68e946305f0f2e9e1949c89 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Mon, 22 Jan 2024 11:44:20 -0800 Subject: [PATCH] Make DependencyScanningError conform to LocalizedError In order to get better error message on the build system, make DependencyScanningError conform to LocalizedError and return descriptive `errorDescription` for build system to display. --- Sources/SwiftDriver/SwiftScan/SwiftScan.swift | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Sources/SwiftDriver/SwiftScan/SwiftScan.swift b/Sources/SwiftDriver/SwiftScan/SwiftScan.swift index 3d4dee314..8ebe9e041 100644 --- a/Sources/SwiftDriver/SwiftScan/SwiftScan.swift +++ b/Sources/SwiftDriver/SwiftScan/SwiftScan.swift @@ -15,13 +15,14 @@ import func Foundation.strdup import func Foundation.free import class Foundation.JSONDecoder +import protocol Foundation.LocalizedError import struct Foundation.Data import protocol TSCBasic.DiagnosticData import struct TSCBasic.AbsolutePath import struct TSCBasic.Diagnostic -public enum DependencyScanningError: Error, DiagnosticData { +public enum DependencyScanningError: LocalizedError, DiagnosticData { case missingRequiredSymbol(String) case dependencyScanFailed(String) case failedToInstantiateScanner @@ -60,6 +61,10 @@ public enum DependencyScanningError: Error, DiagnosticData { return "Supported compiler argument query failed" } } + + public var errorDescription: String? { + return self.description + } } @_spi(Testing) public struct ScannerDiagnosticPayload {