Egor Zhdan
deea1e8b02
[cxx-interop] Add tests for methods of reference types returning reference types
...
rdar://130686970 / resolves https://github.com/swiftlang/swift/issues/64315
2024-06-28 18:32:17 +01:00
Egor Zhdan
494474b021
[cxx-interop] Support C++ default arguments
...
This allows calling a C++ function with default arguments from Swift without having to explicitly specify the values of all arguments.
rdar://103975014
2024-01-10 16:37:42 +00:00
zoecarver
13b0a5bc37
[nfc] Clang format changes.
2022-07-21 17:34:36 -04:00
zoecarver
74d76e2888
[cxx-interop] Add diagnostics and validation for retain/release function; require all foreign reference types to provide retain release functions or be immortal.
2022-07-21 12:25:21 -04:00
zoecarver
6acffbbee6
[cxx-interop] Flip the switch: only import safe APIs.
2022-07-18 17:15:15 -04:00
zoecarver
3805828ad0
[cxx-interop] Add CxxShim library; move __swift_interopStaticCast into it.
2022-07-05 15:52:51 -07:00
Egor Zhdan
5aea9195e3
[cxx-interop] Update tests for foreign reference types
...
This fixes errors in tests:
```
/home/build-user/swift/test/Interop/Cxx/foreign-reference/Inputs/singleton.h:8:14: error: 'operator new' is missing exception specification 'noexcept'
inline void *operator new(size_t, void *p) { return p; }
^
/usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/new:173:33: note: previous declaration is here
_GLIBCXX_NODISCARD inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
```
2022-07-04 19:06:11 +01:00
zoecarver
336cd29333
[cxx-interop] Add support for calling members of base classes on UFOs.
2022-04-21 13:40:59 -07:00
zoecarver
fc3b3a1d71
[cxx-interop] Implement foreign reference types.
...
This is an expiremental feature to allow an attribute, `import_as_ref`, to import a C++ record as a non-reference-counted reference type in Swift.
2021-12-08 15:35:18 +00:00