@@ -554,13 +554,25 @@ public struct InlineSnapshotSyntaxDescriptor: Hashable {
554554 case 0 :
555555 if snapshot. wasRecording || functionCallExpr. trailingClosure == nil {
556556 functionCallExpr. rightParen? . trailingTrivia = . space
557+ let trailingClosureTrivia = functionCallExpr. trailingClosure? . trailingTrivia
557558 if let snapshotClosure {
558- functionCallExpr. trailingClosure = snapshotClosure // FIXME: ?? multipleTrailingClosures.removeFirst()
559+ // FIXME: ?? multipleTrailingClosures.removeFirst()
560+ functionCallExpr. trailingClosure =
561+ if let trailingClosureTrivia, trailingClosureTrivia. count > 0 {
562+ snapshotClosure. with ( \. trailingTrivia, snapshotClosure. trailingTrivia + trailingClosureTrivia)
563+ } else {
564+ snapshotClosure
565+ }
559566 } else if !functionCallExpr. additionalTrailingClosures. isEmpty {
560567 let additionalTrailingClosure = functionCallExpr. additionalTrailingClosures. remove (
561568 at: functionCallExpr. additionalTrailingClosures. startIndex
562569 )
563- functionCallExpr. trailingClosure = additionalTrailingClosure. closure
570+ functionCallExpr. trailingClosure =
571+ if let trailingClosureTrivia, trailingClosureTrivia. count > 0 {
572+ additionalTrailingClosure. closure. with ( \. trailingTrivia, additionalTrailingClosure. closure. trailingTrivia + trailingClosureTrivia)
573+ } else {
574+ additionalTrailingClosure. closure
575+ }
564576 } else {
565577 functionCallExpr. rightParen? . trailingTrivia = " "
566578 functionCallExpr. trailingClosure = nil
@@ -599,7 +611,13 @@ public struct InlineSnapshotSyntaxDescriptor: Hashable {
599611 if snapshot. wasRecording {
600612 if let snapshotClosure {
601613 functionCallExpr. additionalTrailingClosures [ index] . label = snapshotLabel
602- functionCallExpr. additionalTrailingClosures [ index] . closure = snapshotClosure
614+ let trailingTrivia = functionCallExpr. additionalTrailingClosures [ index] . closure. trailingTrivia
615+ functionCallExpr. additionalTrailingClosures [ index] . closure =
616+ if trailingTrivia. count > 0 {
617+ snapshotClosure. with ( \. trailingTrivia, snapshotClosure. trailingTrivia + trailingTrivia)
618+ } else {
619+ snapshotClosure
620+ }
603621 } else {
604622 functionCallExpr. additionalTrailingClosures. remove ( at: index)
605623 }
0 commit comments