H. Peter Anvin wrote: > On 12/09/2009 06:56 AM, Michael Matz wrote: >>> Aren't bits in the _Bool byte of"bar" specified by the psABI >> Right now they are specified in the psABI, you suggested to remove that >> specification. >> > > The intent of H.J.'s proposal is to require bits <7:1> == 0 in all cases > (and higher bits as don't cares, the same way a char is passed), as > opposed to the current text which requires <63:1> == 0 when passed as > registers or on the stack (and <7:1> == 0 when stored in a memory > object.) Furthermore, the current psABI text is inconsistent for > arguments are return values; this is a bug in the wordsmithing of the > text rather than intentional, if I remember the original discussions > correctly.
Surely Postel's Law applies: Be conservative in what you do; be liberal in what you accept from others. So, return values should be zero-extended to the full word, but we shouldn't assume that parameters will be. Andrew.