Commit Graph

58 Commits

Author SHA1 Message Date
Alex Lorenz
3533686605 [interop][SwiftToCxx] emit copy constructor that calls value witness initWithCopy function for Swift structs 2022-06-13 15:33:43 -07:00
Alex Lorenz
b787172302 [interop][SwiftToCxx] emit destructor that calls value witness destroy function for Swift structs 2022-06-13 15:02:55 -07:00
Tongjie Wang
f033aad3c1 [interop][SwiftToCxx] pass struct to function as inout 2022-06-13 14:40:55 -07:00
Alex Lorenz
9254c47b2c [interop][SwiftToCxx] emit swift type metadata access function declaration for structs 2022-06-13 09:16:17 -07:00
Alex Lorenz
132729906c [interop][SwiftToCxx] pass / return Swift struct values between C/C++ and Swift 2022-06-08 07:03:24 -07:00
Alex Lorenz
db5119fdef fix testcase to avoid -emit-ir 2022-06-01 14:09:06 -07:00
Alex Lorenz
42c6ff63b8 [interop][SwiftToCxx] Gather initial struct layout information and emit struct stubs with storage in C++
This change extends the clang header printer to start emitting C++ classes for Swift struct types with the correct struct layout in them (size + alignment)
2022-06-01 14:06:25 -07:00
Alex Lorenz
a7053e458f [interop][swiftToCxx] emit empty skeleton C++ classes for Swift struct decls 2022-05-25 12:26:25 -07:00