@@ -368,8 +368,9 @@ public struct ClangExplicitModulesPayload: Serializable, Encodable, Sendable {
368368 public let reportRequiredTargetDependencies : BooleanWarningLevel
369369 public let verifyingModule : String ?
370370 public let shouldGenerateReproducerForErrors : Bool
371+ public let reproducerOutputPath : Path ?
371372
372- fileprivate init ( uniqueID: String , sourcePath: Path , libclangPath: Path , usesCompilerLauncher: Bool , outputPath: Path , scanningOutputPath: Path , casOptions: CASOptions ? , cacheFallbackIfNotAvailable: Bool , dependencyFilteringRootPath: Path ? , reportRequiredTargetDependencies: BooleanWarningLevel , verifyingModule: String ? , shouldGenerateReproducerForErrors: Bool ) {
373+ fileprivate init ( uniqueID: String , sourcePath: Path , libclangPath: Path , usesCompilerLauncher: Bool , outputPath: Path , scanningOutputPath: Path , casOptions: CASOptions ? , cacheFallbackIfNotAvailable: Bool , dependencyFilteringRootPath: Path ? , reportRequiredTargetDependencies: BooleanWarningLevel , verifyingModule: String ? , shouldGenerateReproducerForErrors: Bool , reproducerOutputPath : Path ? ) {
373374 self . uniqueID = uniqueID
374375 self . sourcePath = sourcePath
375376 self . libclangPath = libclangPath
@@ -382,10 +383,11 @@ public struct ClangExplicitModulesPayload: Serializable, Encodable, Sendable {
382383 self . reportRequiredTargetDependencies = reportRequiredTargetDependencies
383384 self . verifyingModule = verifyingModule
384385 self . shouldGenerateReproducerForErrors = shouldGenerateReproducerForErrors
386+ self . reproducerOutputPath = reproducerOutputPath
385387 }
386388
387389 public func serialize< T: Serializer > ( to serializer: T ) {
388- serializer. serializeAggregate ( 12 ) {
390+ serializer. serializeAggregate ( 13 ) {
389391 serializer. serialize ( uniqueID)
390392 serializer. serialize ( sourcePath)
391393 serializer. serialize ( libclangPath)
@@ -398,11 +400,12 @@ public struct ClangExplicitModulesPayload: Serializable, Encodable, Sendable {
398400 serializer. serialize ( reportRequiredTargetDependencies)
399401 serializer. serialize ( verifyingModule)
400402 serializer. serialize ( shouldGenerateReproducerForErrors)
403+ serializer. serialize ( reproducerOutputPath)
401404 }
402405 }
403406
404407 public init ( from deserializer: any Deserializer ) throws {
405- try deserializer. beginAggregate ( 12 )
408+ try deserializer. beginAggregate ( 13 )
406409 self . uniqueID = try deserializer. deserialize ( )
407410 self . sourcePath = try deserializer. deserialize ( )
408411 self . libclangPath = try deserializer. deserialize ( )
@@ -415,6 +418,7 @@ public struct ClangExplicitModulesPayload: Serializable, Encodable, Sendable {
415418 self . reportRequiredTargetDependencies = try deserializer. deserialize ( )
416419 self . verifyingModule = try deserializer. deserialize ( )
417420 self . shouldGenerateReproducerForErrors = try deserializer. deserialize ( )
421+ self . reproducerOutputPath = try deserializer. deserialize ( )
418422 }
419423
420424}
@@ -1028,7 +1032,8 @@ public class ClangCompilerSpec : CompilerSpec, SpecIdentifierType, GCCCompatible
10281032 dependencyFilteringRootPath: isForPCHTask ? nil : cbc. producer. sdk? . path,
10291033 reportRequiredTargetDependencies: cbc. scope. evaluate ( BuiltinMacros . DIAGNOSE_MISSING_TARGET_DEPENDENCIES) ,
10301034 verifyingModule: verifyingModule ( cbc) ,
1031- shouldGenerateReproducerForErrors: cbc. scope. evaluate ( BuiltinMacros . CLANG_EXPLICIT_MODULES_ENABLE_REPRODUCER_FOR_ERRORS)
1035+ shouldGenerateReproducerForErrors: cbc. scope. evaluate ( BuiltinMacros . CLANG_EXPLICIT_MODULES_ENABLE_REPRODUCER_FOR_ERRORS) ,
1036+ reproducerOutputPath: cbc. scope. evaluate ( BuiltinMacros . CLANG_EXPLICIT_MODULES_REPRODUCER_OUTPUT_PATH) . nilIfEmpty
10321037 )
10331038 let explicitModulesSignatureData = cachedBuild ? " cached " : nil
10341039
0 commit comments