Date: Wed, 17 Jan 2001 00:51:40 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: "David O'Brien" <obrien@FreeBSD.org> Cc: Garrett Wollman <wollman@khavrinen.lcs.mit.edu>, Maxim Sobolev <sobomax@FreeBSD.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/lib/libvgl bitmap.c main.c simple.c vgl.h Message-ID: <Pine.BSF.4.21.0101170039100.2393-100000@besplex.bde.org> In-Reply-To: <20010115143602.A44766@dragon.nuxi.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 15 Jan 2001, David O'Brien wrote: > On Mon, Jan 15, 2001 at 02:43:43PM -0500, Garrett Wollman wrote: > > >> > -void VGLSetXY(VGLBitmap *object, int x, int y, byte color); > > >> > +void VGLSetXY(VGLBitmap *object, int x, int y, u_long color); > > > > > Please bump shared library version number, because ABI is likely to be broken. > > > > Changes of this sort clearly do *not* break the ABI on Intel > > architecture (the parameter `color' is in the same place on the stack, > > Not for 64-bit longs on x86... Heh. I don't think there's an official ABI for those. I've never seen one for ordinary longs. In practice, gcc pessimizes both the caller and the callee for passing types smaller than ints. The caller extends the value and the callee truncates the value. Only one side needs to be pessimized to support the C standard (if a prototype for the callee is in scope). Pessimizing both sides helps support mixing code compiled by different compilers and may be required by ABI's. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0101170039100.2393-100000>