Hi,
Thanks for the reply. I'll paste the backtrace.
--------
0] :backtrace 20
0: (SB-KERNEL::CONTROL-STACK-EXHAUSTED-ERROR) 1: ("foreign function: call_into_lisp") 2: ("foreign function: call_into_lisp_tramp") 3: ((FLET #:BODY-FUN-[GETHASH3]995)) 4: (SB-IMPL::GETHASH3 :CHAR #<HASH-TABLE :TEST EQL :COUNT 55 {1044DFE1}> NIL) 5: (CFFI::FIND-TYPE-PARSER :CHAR) 6: (CFFI::PARSE-TYPE :CHAR) 7: ((SB-PCL::FAST-METHOD CFFI:FOREIGN-TYPE-SIZE (T)) #<unavailable argument> #<unavailable argument> :CHAR) 8: (CFFI:FOREIGN-ALLOC :CHAR) 9: (CFFI:FOREIGN-STRING-ALLOC #<unavailable argument>) 10: ((SB-PCL::FAST-METHOD CFFI:TRANSLATE-TO-FOREIGN (STRING CFFI::FOREIGN-STRING-TYPE)) #<unavailable argument> #<unavailable argument> "name" #<unavailable argument>) 11: (OBJC-CFFI::SEL-REGISTER-NAME "name") 12: ((SB-PCL::FAST-METHOD CFFI:TRANSLATE-TO-FOREIGN (STRING OBJC-CFFI::OBJC-SELECTOR-TYPE)) #<unavailable argument> #<unavailable argument> "name" #<unavailable argument>) 13: ((SB-PCL::FAST-METHOD CFFI:TRANSLATE-FROM-FOREIGN (T OBJC-CFFI::OBJC-PROTOCOL-TYPE)) #<unavailable argument> #<unavailable argument> #.(SB-SYS:INT-SAP #XA0544CD8) #<unavailable argument>) 14: ((SB-PCL::FAST-METHOD CFFI:TRANSLATE-FROM-FOREIGN (T OBJC-CFFI::OBJC-PROTOCOL-LIST-TYPE)) #<unavailable argument> #<unavailable argument> #.(SB-SYS:INT-SAP #X001047A0) #<unavailable argument>) 15: ((SB-PCL::FAST-METHOD CFFI:TRANSLATE-FROM-FOREIGN (T OBJC-CFFI::OBJC-CLASS-TYPE)) #<unavailable argument> #<unavailable argument> #.(SB-SYS:INT-SAP #XA090D100) #<unavailable argument>) 16: (OBJC-GET-CLASS "Protocol") 17: ((LAMBDA (SB-PCL::|.P0.| SB-PCL::|.P1.|)) #<unavailable argument> #<unavailable argument>) 18: ((SB-PCL::FAST-METHOD CFFI:TRANSLATE-FROM-FOREIGN (T OBJC-CFFI::OBJC-PROTOCOL-TYPE)) #<unavailable argument> #<unavailable argument> #.(SB-SYS:INT-SAP #XA0544CD8) #<unavailable argument>) 19: ((SB-PCL::FAST-METHOD CFFI:TRANSLATE-FROM-FOREIGN (T OBJC-CFFI::OBJC-PROTOCOL-LIST-TYPE)) #<unavailable argument> #<unavailable argument> #.(SB-SYS:INT-SAP #X001047A0) #<unavailable argument>)
0]
I am sorry but i don't have Leopard yet :-(
Anyway, can you send to the mailing list the full backtrace of the error and the file /Users/huangjianshi/.sbcl/site/cl-objc/src/frameworks/Foundation- CLOS.lisp?
Please include also the version of cffi you are using.
Other way to solve the error is to delete the Foundation-CLOS.lisp file and recompile cl-objc. The file (it contains the clos bindings for the Foundation framework) should be recreated and maybe the new file (made using information got from the objc runtime) works for Leopard too.
P.S. Actually i am merging cl-objc with the work coming from other incomplete objc bridge, so maybe in 1/2 weeks the new code can incidentally work also on Leopard, so stay tuned!
I'll wait for the next release. :)
Cheers, Jianshi