Skip to content

[cxx-interop][SwiftToCxx] Do not crash while trying to expose a macro to C++ #73510

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
May 10, 2024

Conversation

egorzhdan
Copy link
Contributor

This fixes a compiler crash that happened when emitting a Clang header for a Swift module that declares multiple macros with the same base name and different argument names.

Swift macros are not currently designed to be exposed to C++. This teaches the compiler to explicitly mark them as unavailable in C++.

rdar://117969472 / resolves #69656

… to C++

This fixes a compiler crash that happened when emitting a Clang header for a Swift module that declares multiple macros with the same base name and different argument names.

Swift macros are not currently designed to be exposed to C++. This teaches the compiler to explicitly mark them as unavailable in C++.

rdar://117969472 / resolves #69656
@egorzhdan egorzhdan added the c++ interop Feature: Interoperability with C++ label May 8, 2024
@egorzhdan
Copy link
Contributor Author

@swift-ci please smoke test

@egorzhdan egorzhdan requested a review from beccadax May 8, 2024 15:48
@xedin xedin removed their request for review May 8, 2024 16:05
@egorzhdan egorzhdan merged commit 796ae1d into main May 10, 2024
3 checks passed
@egorzhdan egorzhdan deleted the egorzhdan/macro-name-collision branch May 10, 2024 11:01
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.

Crash when emitting C++ header for overloaded macros
2 participants