Re:C Isn't a Programming Language Anymore
by cryptonector on Monday November 07, 2022 @04:32PM
(#33512803)
What's wrong with pass-by-value structs? Yes, I'm aware that long ago there was a problem on SPARCs where Sun Studio and GCC handled struct value returns differently, but not pass-by-value. ABIs can and do define how to do pass by value of values of struct types.
The bits of C that need to be avoided in APIs are:
- bitfields unless no bitfield crosses a
byte boundary
- struct fields of enum types (because the
size of the enum type is implementation
specific)
The bits of C that need to be avoided in APIs are:
The spec should fix this, damnit.