Skip to content

Conversation

@kavon
Copy link
Member

@kavon kavon commented Dec 2, 2025

  • Summary: keypath metadata was emitting the wrong count of requirements in its generic signature, as it emits a separate count from the actual generic signature itself.
  • Original PR: IRGen/ABI: fix count of requirements in getAddrOfGenericEnvironment #85450
  • Risk: This is an ABI change, as any keypath formed using a generic type that conforms to a noncopyable or nonescapable protocol will have its count of conformance requirements change to a corrected, smaller number. It's not expected to be a breaking change, as it's correcting an inaccurate count to be a smaller number than it was before.

`irgen::addGenericRequirements` will later filter out Copyable
and Escapable requirements, so this field's count isn't accurate
if it's using the pre-filtered number.

This should in theory only affect the metadata emission for keypaths,
specifically, the caller `IRGenModule::getAddrOfKeyPathPattern`.

(cherry picked from commit 38af19b)
@kavon kavon requested a review from a team as a code owner December 2, 2025 17:37
@kavon
Copy link
Member Author

kavon commented Dec 2, 2025

@swift-ci test

@kavon kavon enabled auto-merge December 2, 2025 17:38
@kavon kavon merged commit 59cbba1 into swiftlang:release/6.3 Dec 3, 2025
5 checks passed
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.

2 participants