Hacker News new | ask | show | jobs
by pjmlp 20 days ago
C doesn't have a stable ABI, most folks mistake the ABI from OS written in C, with an imaginary C ABI.
3 comments

OS ABIs are usually stable though ;)

Finally someone getting it right though. C doesn't have any ABI per se, compilers need to implement whatever ABI a specific operating system defines (otherwise the language would be pretty useless since it couldn't call into operating system functions).

Even then, arrays can be encoded and enforced on each side. It would be simpler to enforce this via the abi—but the abi itself does not open issues with array description and access
Sure that's technically correct, but in practice it means I get a stable ABI :).