You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make CNIOAtomics and CNIODarwin compatible with C++ interop (#3251)
### Motivation:
This fixes linker errors such as
```
@nonobjc __C.catmc_nio_atomic_uint_least32_t_create_with_existing_storage(Swift.UnsafeMutablePointer<__C.catmc_nio_atomic_uint_least32_t>, Swift.UInt32) -> () in NIOAtomic.swift.o
NOTE: found '_catmc_nio_atomic_uint_least32_t_create_with_existing_storage' in c-nioatomics.c.o, declaration possibly missing 'extern "C"'
```
when building with Swift/C++ interoperability enabled.
### Modifications:
Wrapped the C declarations a couple of headers in `extern "C" { ... }`
blocks.
### Result:
The project builds successfully with Swift/C++ interop enabled.
Co-authored-by: Cory Benfield <[email protected]>
0 commit comments