Skip to content

Conversation

@nkcsgexi
Copy link
Contributor

Before this change, we were sometimes using introductory platform version as the starting version where a symbol is considered belonging to the original binary. However, this is insufficient because backdeploying to a platform version prior to a symbol's introductory version can happen. When it happens, we should expect the moved symbol to be found in the moved-from library, not the moved-to one. Expecting the symbol to be found in the moved-to library can lead to crasher.

Resolves: rdar://159408187

@nkcsgexi nkcsgexi marked this pull request as ready for review November 19, 2025 21:59
@nkcsgexi nkcsgexi requested a review from rjmccall as a code owner November 19, 2025 21:59
@nkcsgexi
Copy link
Contributor Author

@swift-ci please smoke test

@nkcsgexi
Copy link
Contributor Author

@swift-ci please smoke test

@nkcsgexi nkcsgexi enabled auto-merge November 19, 2025 23:35
@nkcsgexi nkcsgexi requested a review from a team as a code owner November 20, 2025 17:04
@nkcsgexi
Copy link
Contributor Author

hey @swiftlang/standard-librarians , please notice that I need to update the ABI baseline for stdlib because of this change.

…for $ld$previous directives

Before this change, we were sometimes using introductory platform version as the starting version where
a symbol is considered belonging to the original binary. However, this is insufficient
because backdeploying to a platform version prior to a symbol's introductory version can happen. When it
happens, we should expect the moved symbol to be found in the moved-from library, not the moved-to one. Expecting
the symbol to be found in the moved-to library can lead to crasher.

Resolves: rdar://159408187
@nkcsgexi
Copy link
Contributor Author

@swift-ci please smoke test

@nkcsgexi nkcsgexi merged commit be5d4b3 into swiftlang:main Nov 20, 2025
3 checks passed
@nkcsgexi nkcsgexi deleted the 159408187 branch November 20, 2025 22:33
nkcsgexi added a commit that referenced this pull request Nov 21, 2025
rjmansfield added a commit that referenced this pull request Nov 21, 2025
test: update test TBD/linker-directives-ld-previous-ios.swift after #85600
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.

1 participant