Skip to content

[6.2][cxx-interop] Fix calling rvalue ref of a trivial type #80584

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 8, 2025

Conversation

Xazax-hun
Copy link
Contributor

Explanation: Fixes a runtime crash in the generated binary due to mismatched calling convention when calling a function taking an rvalue reference.
Scope: Affects C++ APIs taking rvalue references to directly passed types (e.g., trivially destructible types).
Issue: rdar://148585343
Risk: Low, targeted to rvalue references which is a newly supported feature.
Testing: Added tests to test suite
Reviewer: @j-hui

Explanation: Fixes a runtime crash in the generated binary due to
mismatched calling convention when calling a function taking an rvalue
reference.
Scope: Affects C++ APIs taking rvalue references to directly passed
types (e.g., trivially destructible types).
Issue: rdar://148585343
Risk: Low, targeted to rvalue references which is a newly supported
feature.
Testing: Added tests to test suite
Reviewer: John Hui
@Xazax-hun Xazax-hun added c++ interop Feature: Interoperability with C++ 🍒 release cherry pick Flag: Release branch cherry picks labels Apr 7, 2025
@Xazax-hun Xazax-hun requested a review from a team as a code owner April 7, 2025 10:50
@Xazax-hun Xazax-hun requested review from j-hui and egorzhdan April 7, 2025 10:50
@Xazax-hun
Copy link
Contributor Author

@swift-ci please test

@Xazax-hun Xazax-hun merged commit 60dced5 into release/6.2 Apr 8, 2025
5 checks passed
@Xazax-hun Xazax-hun deleted the gaborh/rvalue-ref-calling-conv-6.2 branch April 8, 2025 15:44
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
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants