Commit Graph

9 Commits

Author SHA1 Message Date
Alex Lorenz
62fd801828 [interop] C++ parameter of reference type should be imported as its pointee type in Swift even if parameter's type is type alias
This finally allows std::vector.push_back to be called with the pushed value directly passed into it
2023-05-03 18:23:03 -07:00
zoecarver
e05daed3b4 [cxx-interop] Disable rvalue references. We don't support them correctly (leading to lifetime issues). We are missing a consuming. 2023-05-01 23:13:33 -07:00
Puyan Lotfi
84a69c4143 [C++-Interop] Import const &T function parameters as @in_guaranteed
When passing value types as a const-ref to a C++ API, ensure that the
caller is tasked with handling the lifetime of the instance passed in.
2022-09-12 16:27:27 -04: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
Alex Lorenz
ebb21d7ec1 [cxx-interop] Import const T& parameters as T.
This change allows Swift code to pass immutable values to const references in C++.
2022-03-03 14:42:27 -08:00
zoecarver
7a42b71bc0 [cxx-interop] Import reference types as inout not UnsafePointer. 2021-09-23 18:10:56 -07:00
Marcel Hlopko
e293330563 [CxxInterop] Import C++ references. (#31784) 2020-05-15 10:42:37 +02:00
Saleem Abdulrasool
6bf7593fd5 Revert "[CxxInterop] Import C++ references." (#31777) 2020-05-14 10:43:22 +02:00
Marcel Hlopko
30b5fd52e8 [CxxInterop] Import C++ references. (#31702) 2020-05-13 13:34:28 +02:00