Becca Royal-Gordon
a02698ba06
[PrintAsClang] Fix thunks for throwing Never funcs
...
Extend the previous commit’s support for functions that return Never to also properly generate code for *throwing* Never functions. This is a little subtle because:
• At the SWIFT_CALL level, throwing Never functions are *not* noreturn
• At the thunk level, throwing Never functions are noreturn *only* if you’re using exceptions; if you’re using swift::Expected, they should throw
• In either case, the compiler cannot statically prove that thunks are noreturn except on the error path, so we need to add an abort() call on the success path
2024-03-29 22:12:20 -07:00
Alex Lorenz
75fd11cffc
[interop][SwiftToCxx] hide swift::Error APIs by default in C++ Swift stdlib overlay
...
They're still experimental
2023-03-10 08:34:45 -08:00
Alex Lorenz
0dc90d38c1
[interop][SwiftToCxx] emit Swift's stdlib inside of 'swift' namespace
2023-03-09 17:32:43 -08:00
Alex Lorenz
1d3797308d
[interop][SwiftToCxx] do not expose functions / properties that throw without the experimental feature
2023-03-02 15:22:36 -08:00
Alex Lorenz
2dcbeb0bc9
[interop][SwiftToCxx] do not require @_expose when generating C++ interface for a Swift module
...
Instead, we emit API bindings for all supported public APIs, when -enable-experimental-cxx-interop is enabled
2023-03-02 14:06:47 -08:00
Alex Lorenz
8cd18670bf
[interop][SwiftToCxx] disable the arm64e testing for swift-expected-execution.cpp
2022-12-19 10:13:54 -08:00
Roberto Rosmaninho
ce666ac592
[Interop][SwiftToCxx] Adding support to return Swift::Expected when exceptions are not available.
2022-12-14 12:07:43 -03:00
Roberto Rosmaninho
a2633d942b
[Interop][SwiftToCxx] Fixing swift-expected-execution.cpp test
2022-12-14 12:07:43 -03:00
Roberto Rosmaninho
782bc6aa6f
[Interop][SwiftToCxx] Moving swift::Expected to _SwiftStdlibCxxOverlay.h
2022-12-14 12:07:43 -03:00
Roberto Rosmaninho
74450be9d2
[Interop][SwiftToCxx] Moving the max function to _impl namespace and assigning swift-expected-execution.cpp as unsupported by Windows.
2022-12-14 12:07:43 -03:00
Roberto Rosmaninho
6d1696260f
[Interop] [SwiftToCxx] Using buffer to create an instance for either a type or an Error and fixing minor errors
2022-12-14 12:07:43 -03:00
Roberto Rosmaninho
3f6351d2ee
[Interop][SwiftToCxx] Add new line
2022-12-14 12:07:43 -03:00
Roberto Rosmaninho
c42dfea346
[Interop][SwiftToCxx] Creating test cases for swift::Expected
2022-12-14 12:07:43 -03:00