 
   private mutating func addAutolinkExtractJob(
     linkerInputs: [TypedVirtualPath],
-    addLinkerInputs: ([TypedVirtualPath]) -> Void,
+    addLinkerInput: (TypedVirtualPath) -> Void,
     addJob: (Job) -> Void)
   throws
   {
     let autolinkInputs = linkerInputs.filter { $0.type == .object }
     if let autolinkExtractJob = try autolinkExtractJob(inputs: autolinkInputs) {
       addJob(autolinkExtractJob)
-      addLinkerInputs(autolinkExtractJob.outputs)
+      autolinkExtractJob.outputs.forEach(addLinkerInput)
     }
   }
 
   private mutating func addWrapJobOrMergeOutputs(mergeJob: Job,
                                                  debugInfo: DebugInfo,
                                                  addJob: (Job) -> Void,
-                                                 addLinkerInputs: ([TypedVirtualPath]) -> Void)
+                                                 addLinkerInput: (TypedVirtualPath) -> Void)
   throws {
     guard case .astTypes = debugInfo.level
     else { return }

    func addJob(_ j: Job) {
      jobs.append(j)
    }
    func addJobs(_ js: [Job]) {
      jobs.append(contentsOf: js)
    }

    try addPrecompileModuleDependenciesJobs(addJobs: addJobs)
    try addPrecompileBridgingHeaderJob(addJob: addJob)
    try addEmitModuleJob(addJob: addJob)


             "Merge module job should only have one swiftmodule output")
      let wrapJob = try moduleWrapJob(moduleInput: mergeModuleOutputs[0])
      addJob(wrapJob)
      wrapJob.outputs.forEach(addLinkerInput)
    } else {
      mergeJob.outputs.forEach(addLinkerInput)
    }
  }

