[cffi-devel] [PATCH] 64-bit support for Allegro, and allocate stack objects in the static area

John Fremlin jf at msi.co.jp
Thu Jan 8 01:11:09 UTC 2009


Why are you ignoring this patch?

On Mon, 5 Jan 2009 12:48:13 +0900, John Fremlin <jf at msi.co.jp> wrote:

> On Mon, 5 Jan 2009 03:14:13 +0000, "Luís Oliveira" <luismbo at gmail.com> wrote:
> 
> > On Mon, Jan 5, 2009 at 1:02 AM, John Fremlin <jf at 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
> 




More information about the cffi-devel mailing list