3 ms·
Of course the C ABI places constraints on the memory layout of the types. For example, alignment. Also in what register "small" types are passed when passing th
by jenadine 4y ago
Of course the C ABI places constraints on the memory layout of the types. For example, alignment. Also in what register "small" types are passed when passing them to functions. It actually depends if the struct has float members or not.
C itself is quite complex already.
C++ adds more features.
But for example, the Rust ABI uses the C++ ABI, because C is too simple and doesn't support unwinding (for panics) or 128bit integers