On 2006-jun-26, at 18:13, Juan Jose Garcia-Ripoll wrote:
Do you use the sources from common-lisp.net? Or the older tree (abandoned due to CVS problems) in sourceforge.net?
Doh! I was using the sf.net repository. Sorry about that.
- DEFCVAR uses DEFINE-SYMBOL-MACRO without encapsulating it in an
EVAL-WHEN form. This breaks bindings.lisp.
Reading the spec, it seems you are right. Unlike every other macro definers, define-symbol-macro is not required to make the macro available at compile-time. Yet, every other lisp does that. To me, it seems like an oversight in the spec since define-symbol-macro was a late addition to ANSI CL. Is there a particular reason why ECL's define-symbol-macro shouldn't do what the other lisps do?
Apart from that, and from the fact that your tests files include functions with too many arguments (ECL is restricted to 64 required arguments, but this could be changed, probably), things run ok here.
Now that I have a recent ECL, I fixed other cffi-ecl bugs (specific to darwin/ppc). Still, it fails 31 tests on linux/x86 and 35 tests on darwin/ppc. Some of these might be cffi-ecl bugs but others like MAKE- POINTER.HIGH seem to indicate ECL bugs. I'll look into this later, if someone more proficient with ECL doesn't look into this in the mean time.
<cffi.diff>
Thanks! (Didn't understand the RT changes, works fine for me without them, so didn't apply those.)