On Fri, Nov 08, 2019 at 10:49:47AM -0500, rhkra...@gmail.com wrote: > On Friday, November 08, 2019 09:08:07 AM Roberto C. Sánchez wrote: > > > > For example, the return type of a function can be changed from bool to > > int and that will not change the SONAME. > > The items mentioned in the next sentences make sense to me in that they don't > require a SONAME change, but I'm surprised that the return type of a function > doesn't require a change? >
Well, as I understand it, since there is no single bit machine type, bool as actually stored as an int. Changing from bool to int works perfectly fine without affecting the ABI. However, changing from bool or int to double would affect the ABI. In fact, I have a vague recollection that you could even go from void to int since from an implementation perspective void actually returns something on the stack frame but it is just discarded. Though, I could very well be mistaken there. Regards, -Roberto -- Roberto C. Sánchez