Skip to content

Conversation

@Xazax-hun
Copy link
Contributor

@Xazax-hun Xazax-hun commented Apr 7, 2025

Explanation: Fixes an issue where the generated reverse interop header would not compile for nested types when library evolution is off. While this is a bug in a new feature in 6.1, users upgrading from 6.0 to 6.1 can see this as a regression because the new constructs that we started to expose to the interop header in 6.1 will trigger the compilation error. Scope: C++ reverse interop for nested classes for non-opaque types.
Issue: rdar://147882976
Risk: Low, the fix is fairly targeted. While it does affect other (non-nested type) scenarios, those changes are straightforward making some names fully qualified. Moreover, that is well tested in our test suite.
Testing: Added tests to test suite
Original PR: #80495
Reviewer: @egorzhdan

@Xazax-hun Xazax-hun requested a review from a team as a code owner April 7, 2025 11:40
@Xazax-hun Xazax-hun requested a review from egorzhdan April 7, 2025 11:41
@Xazax-hun Xazax-hun added c++ interop Feature: Interoperability with C++ 🍒 release cherry pick Flag: Release branch cherry picks labels Apr 7, 2025
Explanation: Fixes an issue where the generated reverse interop header would not
compile for nested types when library evolution is off. While this is a
bug in a new feature in 6.1, users upgrading from 6.0 to 6.1 can see
this as a regression because the new constructs that we started to
expose to the interop header in 6.1 will trigger the compilation error.
Scope: C++ reverse interop for nested classes for non-opaque types.
Issue: rdar://147882976
Risk: Low, the fix is fairly targeted. While it does affect other (non-nested
type) scenarios, those changes are straightforward making some names fully
qualified. Moreover, that is well tested in our test suite.
Testing: Added tests to test suite
Reviewer: @egorzhdan
@Xazax-hun Xazax-hun force-pushed the gaborh/nested-reverse-interop-fixes-on-6.1 branch from 5fa0d63 to dc10708 Compare April 7, 2025 16:38
@Xazax-hun
Copy link
Contributor Author

@swift-ci please test

@Xazax-hun Xazax-hun added swift 6.1 c++ interop Feature: Interoperability with C++ and removed c++ interop Feature: Interoperability with C++ labels Apr 10, 2025
@Xazax-hun Xazax-hun merged commit f3c113c into release/6.1 Apr 14, 2025
5 checks passed
@Xazax-hun Xazax-hun deleted the gaborh/nested-reverse-interop-fixes-on-6.1 branch April 14, 2025 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

c++ interop Feature: Interoperability with C++ 🍒 release cherry pick Flag: Release branch cherry picks swift 6.1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants