On Mon, 5 Jan 2009 03:14:13 +0000, "Luís Oliveira" <luis...@gmail.com> wrote:
> On Mon, Jan 5, 2009 at 1:02 AM, John Fremlin <j...@msi.co.jp> wrote: > > @@ -263,12 +263,12 @@ SIZE-VAR is supplied, it will be bound to SIZE during > > BODY." > > :unsigned-long) 'integer) > > (:float 'single-float) > > (:double 'double-float) > > - (:foreign-address :foreign-address) > > + (:foreign-address 'integer) > > (:void 'null)))) > > This change is somewhat unexpected, is it really necessary? Yes. It is needed because now foreign-allegro-type does not return nil for :foreign-address, and so Allegro will actually check the second value from allegro-type-pair (which it ignored before because the first value was nil). > > (defun foreign-allegro-type (type) > > (if (eq type :foreign-address) > > - nil > > + :unsigned-nat > > type)) > > > > (defun allegro-type-pair (type) > > Does it work if you use :FOREIGN-ADDRESS instead of :UNSIGNED-NAT in > FOREIGN-ALLEGRO-TYPE? No, that's the first thing I tried > I'm asking these questions because I suspect both changes break with > older versions of Allegro but I can't test it since the express > edition 7.0 is no longer available. It's probably not a big deal but > I'd like to at least try to maintain compatibility. There is no :foreign-address type in Allegro 8.1? It is a very strange idea that there ever would be such a type. . . http://www.franz.com/support/documentation/current/doc/ftype.htm _______________________________________________ cffi-devel mailing list cffi-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel