Egor Zhdan
5b5ffde79e
[cxx-interop] Do not crash when passing Bool as const T& parameter
...
The type bridging logic assumed that if a value of type `Swift.Bool` is passed to a Clang function as an argument, then the type of the parameter must be a Clang built-in type (usually `_Bool`). This is not always correct. For instance, the type might be a templated const reference.
rdar://125508505
2024-05-09 15:28:33 +01:00
Holly Borla
6e8a581b42
[LangOptions] Remove the option to enable/disable implicit existential
...
opening.
2022-06-27 18:03:20 -07:00
zoecarver
839839f924
[cxx-interop] Rename enable-cxx-interop -> enable-experimental-cxx-interop.
...
Also removes the driver flag, this will now also always be guarded on `-Xfrontend`.
2022-04-07 19:15:25 -07:00
Doug Gregor
9a7b9c6216
Don't open existentials when calling C++ function templates
...
C++ function templates require specialization, which does not work with
opened existentials. Disable opening for them.
2022-02-18 11:22:57 -08:00
zoecarver
283fc782ec
Revert "Revert "[cxx-interop] A few cleanups and fixes for function templates.""
...
This reverts commit 5de09631ff .
2022-02-15 13:30:10 -08:00
Zoe Carver
5de09631ff
Revert "[cxx-interop] A few cleanups and fixes for function templates."
2022-02-13 09:54:39 -08:00
zoecarver
daceecfc75
[cxx-interop] Remove generateSpecializedCXXFunctionTemplate and just import the decl directly.
...
1) This unifies two code paths that do essentially the same thing.
2) This fixes how we import certain types (such as return types).
2022-02-04 16:18:02 -08:00
zoecarver
c4da4975ed
[NFC] Cleanup function templates implementation. Address post-commmit review comments from #33053 .
...
Addresses the post-commit review comments from #33053 . Just re-naming,
commenting, and some other small cleanups, nothing functionally
different.
2021-01-19 12:02:15 -08:00
Zoe Carver
cb7bb52060
[cxx-interop] Support reference types in function templates. ( #34536 )
2020-11-06 17:13:41 -08:00
Zoe Carver
f0f2246793
[cxx-interop] Support C++ function templates in Swift. ( #33053 )
...
This patch adds rudimentary support for C++ template functions in swift.
2020-10-21 20:42:25 -07:00