Hi Luis,

This is just an update. My son was born recently and I haven't had much time to 
work on this.

On 05/12/2012, at 9:28 AM, Luís Oliveira wrote:

> On Mon, Dec 3, 2012 at 3:24 AM, Mark Cox <markco...@gmail.com> wrote:
>> I can perform ASDF:TEST-SYSTEM on OSICAT if I delete the OSICAT files from 
>> ~/.cache/.
> 
> Right, it seems that for some reason ASDF is not picking up
> basix-unixint's compile-time dependency on packages.lisp. Does that
> seem like a plausible (if incomplete) explanation?

Yes you are correct. The problem can be seen with ASDF::TRAVERSE returning the 
wrong plan:

> (asdf::traverse (make-instance 'asdf:load-op) (asdf:find-system "osicat"))

((#<ASDF:LOAD-OP NIL {100793C8D3}>
  . #<ASDF:CL-SOURCE-FILE "osicat" "osicat-sys" "osicat-sys">)
 (#<ASDF:LOAD-OP NIL {100793C8D3}> . #<ASDF:MODULE "osicat" "osicat-sys">)
 (#<CFFI-GROVEL::PROCESS-OP NIL {10076A7263}>
  . #<CFFI-GROVEL:GROVEL-FILE "osicat" "posix" "basic-unixint">)
 (#<ASDF:LOAD-OP NIL {10077E2133}>
  . #<ASDF:CL-SOURCE-FILE "osicat" "posix" "packages">)
 (#<ASDF:COMPILE-OP NIL {1007609953}>
  . #<CFFI-GROVEL:GROVEL-FILE "osicat" "posix" "basic-unixint">)
....

For some reason there exists a PROCESS-OP on "basic-unixint" before the LOAD-OP 
on "packages". 

I am still trying to ascertain how this occurs though. I am unable to reproduce 
the incorrect plan with my simpler MY-LOAD-OP, MY-COMPILE-OP, 
MY-CL-SOURCE-FILE, MY-PROCESS-OP and MY-PROCESS-OP-INPUT definitions.

I will keep hunting. 

Have a good weekend.
Mark
_______________________________________________
cffi-devel mailing list
cffi-devel@common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel

Reply via email to