Skip to content

Conversation

@rjmccall
Copy link
Contributor

@rjmccall rjmccall commented Oct 7, 2025

  • Calls to variadic-generic protocol requirements weren't applying substitutions properly, so expansion-sensitive types in the callee signature weren't pairing properly with their expansions in the caller.

  • emitPackTransform had an over-destroy if the transformation function actually emitted into the temporary element directly.

  • There were some MV ownership assertions that were wrong, which revealed that the corresponding code really didn't handle consuming/ borrowing mismatches properly at all.

  • We were completely mishandled consuming packs.

Fixes #81002, #80995, and #81600. 6.2 version of #83555.

@rjmccall rjmccall requested a review from a team as a code owner October 7, 2025 15:20
@rjmccall
Copy link
Contributor Author

rjmccall commented Oct 7, 2025

@swift-ci Please test

- Calls to variadic-generic protocol requirements weren't applying
  substitutions properly, so expansion-sensitive types in the callee
  signature weren't pairing properly with their expansions in the
  caller.

- emitPackTransform had an over-destroy if the transformation function
  actually emitted into the temporary element directly.

- There were some MV ownership assertions that were wrong, which
  revealed that the corresponding code really didn't handle consuming/
  borrowing mismatches properly at all.

- We were completely mishandled consuming packs.

Fixes swiftlang#81002, swiftlang#80995, and swiftlang#81600.
@rjmccall rjmccall force-pushed the variadic-witness-fixes-6.2 branch from 1a6185e to fd918f1 Compare October 7, 2025 20:04
@rjmccall
Copy link
Contributor Author

rjmccall commented Oct 7, 2025

@swift-ci Please test

@rjmccall rjmccall merged commit d42b260 into swiftlang:release/6.2 Oct 8, 2025
5 checks passed
@rjmccall rjmccall deleted the variadic-witness-fixes-6.2 branch October 8, 2025 20:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants