Skip to content

[cxx-interop] Properly support OS objects in reverse interop #83670

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
Aug 13, 2025

Conversation

Xazax-hun
Copy link
Contributor

These objects are behind typedefs and user code supposed to use the typedef names. We already have some logic in place for Obj-C interop. Reuse the same logic for C++ to use the correct names.

rdar://150453489

These objects are behind typedefs and user code supposed to use the
typedef names. We already have some logic in place for Obj-C interop.
Reuse the same logic for C++ to use the correct names.

rdar://150453489
@Xazax-hun Xazax-hun added the c++ interop Feature: Interoperability with C++ label Aug 12, 2025
Copy link
Contributor

@j-hui j-hui left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This LGTM, but I'm wonder if we'll be able to eventually move that library-specific logic out of the compiler, and into annotations on libdispatch or something.

@Xazax-hun
Copy link
Contributor Author

@swift-ci please smoke test

@Xazax-hun
Copy link
Contributor Author

wonder if we'll be able to eventually move that library-specific logic out of the compiler, and into annotations on libdispatch or something.

Yup, that would be amazing. Maybe an annotation describing the preferred typedef to be used when a type is referenced in the reverse interop header?

@Xazax-hun
Copy link
Contributor Author

@swift-ci please smoke test Windows

@Xazax-hun Xazax-hun merged commit 1828f5b into swiftlang:main Aug 13, 2025
3 checks passed
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++
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants