Initial set of C++ interoperability documentation pages is ready

Hi @swift-website-workgroup ,

As outlined in my previous post, the @cxx-interop-workgroup would like to add initial set of documentation pages that describe how Swift and C++ interoperability works. The PR with the initial set of documentation pages is now ready for review!

We have recently requested that the Language Steering Group graduates C++ interoperability out of the experimental status, and makes it a feature in Swift 5.9. The documentation pages have been written with that in mind, as if C++ interoperability is a feature in the upcoming Swift 5.9 release. We anticipate that LSG will announce their decision very soon. Our intention is to merge this PR with the initial set of docs right after the LSG announces their decision related to the inclusion C++ interoperability as a feature in Swift 5.9 (provided they approve the request).

We intend to add several additional sections to the documentation after the initial PR, expanding on topics like CMake project setup, using Swift standard library types in C++, and covering more advanced concepts related to both sides of interoperability. We also would like to keep refining and polishing the documentation throughout the summer, until Swift 5.9 is released. We will get help from some of the folks who edit and maintain The Swift Programming Language book as well, who are going to make some editorial changes before Swift 5.9 is released.

For ease of preview, I have attached the three documentation pages here as rendered PDFs. Note that their relative links that point within website don't work in the PDF form.


Hi @swift-website-workgroup ,

Following the Language Steering Group's announcement on the acceptance of the vision for C++ interoperability, we would like to merge the initial set of documentation pages today or tomorrow. Also, following additional guidance from LSG, I updated the documentation to explicitly mention that this feature is still under development without it being explicitly supported in a Swift release. We think that these documentation pages will be a great addition to the Swift website already, and we'll continue to work on them as this feature evolves.

Could one of you please approve the pull request to ensure that these documentation pages can land on the Swift website?



I have approved the PR and also pinged the rest of the workgroup. As everyone is quite busy atm, I'm not sure if there will be any more feedback today though, so I think we're go for merge. We can always open more PRs later to fix any necessary changes.

Looking forward to seeing this on!