@@ -202,15 +202,15 @@ extension ManifestLoaderProtocol {
202202 ) async throws -> Manifest {
203203 // find the manifest path and parse it's tools-version
204204 let manifestPath = try ManifestLoader . findManifest (
205- packagePath: packagePath,
206- fileSystem: fileSystem,
205+ packagePath: packagePath,
206+ fileSystem: fileSystem,
207207 currentToolsVersion: currentToolsVersion
208208 )
209209 let manifestToolsVersion = try ToolsVersionParser . parse ( manifestPath: manifestPath, fileSystem: fileSystem)
210210 // validate the manifest tools-version against the toolchain tools-version
211211 try manifestToolsVersion. validateToolsVersion (
212- currentToolsVersion,
213- packageIdentity: packageIdentity,
212+ currentToolsVersion,
213+ packageIdentity: packageIdentity,
214214 packageVersion: packageVersion? . version? . description ?? packageVersion? . revision
215215 )
216216
@@ -259,7 +259,7 @@ actor ManifestCacheActor {
259259/// `atexit()` handler) which is then deserialized and loaded.
260260public final class ManifestLoader : ManifestLoaderProtocol {
261261 public typealias Delegate = ManifestLoaderDelegate
262-
262+
263263 private let toolchain : UserToolchain
264264 private let serializedDiagnostics : Bool
265265 private let isManifestSandboxEnabled : Bool
@@ -298,7 +298,7 @@ public final class ManifestLoader: ManifestLoaderProtocol {
298298 self . databaseCacheDir = try ? cacheDir. map ( resolveSymlinks)
299299 self . pruneDependencies = pruneDependencies
300300 }
301-
301+
302302 public func load(
303303 manifestPath: AbsolutePath ,
304304 manifestToolsVersion: ToolsVersion ,
@@ -476,7 +476,6 @@ public final class ManifestLoader: ManifestLoaderProtocol {
476476 delegate: Delegate ? ,
477477 delegateQueue: DispatchQueue ?
478478 ) async throws -> ManifestJSONParser . Result {
479-
480479 let key = try CacheKey (
481480 packageIdentity: packageIdentity,
482481 packageLocation: packageLocation,
@@ -677,10 +676,14 @@ public final class ManifestLoader: ManifestLoaderProtocol {
677676
678677 return result
679678 }
680-
681679 }
682680
683681 /// Helper method for evaluating the manifest.
682+ // TODO: Optimizations are disabled to work around a compiler bug. Remove this attribute when the bug is fixed.
683+ // See https://github.com/swiftlang/llvm-project/issues/11377 for details.
684+ #if os(Windows)
685+ @_optimize ( none)
686+ #endif
684687 func evaluateManifest(
685688 at manifestPath: AbsolutePath ,
686689 vfsOverlayPath: AbsolutePath ? = nil ,
0 commit comments