On 10/01/2022 08:38, Florian Weimer via Gcc wrote:
* Jeff Law via Gcc:

Most targets these days use registers for parameter passing and
obviously we can run out of registers on all of them.  The key
property is the size/alignment of the argument differs depending on if
it's pass in a register (get promoted) or passed in memory (not
promoted).  I'm not immediately aware of another ABI with that
feature.  Though I haven't really gone looking.

I think what AArch64 Darwin does is not compatible with a GCC extension
that allows calling functions defined with a prototype without it (for
pre-ISO-C compatibility).  Given that, anyone defining an ABI in
parallel with a GCC implementation probably has paused, reconsidered
what they were doing, and adjusted the ABI for K&R compatibility.

Thanks,
Florian


Not having a prototype was deprecated in C89. One would hope that after 33 years we could move on from that.

R.

Reply via email to