[cffi-devel] callback tests fail on sbcl 0.9.4 Linux x86

Andras Simon asimon at math.bme.hu
Sun Oct 9 14:28:43 UTC 2005


; compiling (DEFCALLBACK < ...)
; file: /opt/home/simon/lisp_packages/cffi-luis/tests/callbacks.lisp
; in: DEFCALLBACK <
;     (CFFI:DEFCALLBACK <
;                     :INT
;                     ((CFFI-TESTS::A :POINTER) (CFFI-TESTS::B
; :POINTER))
;                     (LET ((CFFI-TESTS::X (CFFI:MEM-REF CFFI-TESTS::A
; :INT))
;                           (CFFI-TESTS::Y (CFFI:MEM-REF CFFI-TESTS::B
; :INT)))
;                       (COND ((> CFFI-TESTS::X CFFI-TESTS::Y) 1)
;                             ((< CFFI-TESTS::X CFFI-TESTS::Y) -1)
;                             (T 0))))
; --> PROGN CFFI-SYS:%DEFCALLBACK SETF LET* LET* MULTIPLE-VALUE-BIND
; LET 
; --> ALIEN-SAP SB-ALIEN::ALIEN-LAMBDA 
; ==>
;   (SB-ALIEN-INTERNALS:ALIEN-CALLBACK
;    (FUNCTION INT SYSTEM-AREA-POINTER SYSTEM-AREA-POINTER)
;    (LAMBDA (CFFI-TESTS::A CFFI-TESTS::B)
;      (CFFI::INVERSE-TRANSLATE-OBJECTS (CFFI-TESTS::A CFFI-TESTS::B)
;                                       (:POINTER :POINTER)
;                                       :INT
;                                       (BLOCK <
;                                         (LET #
;                                           #)))))
; 
; caught ERROR:
;   (in macroexpansion of (SB-ALIEN-INTERNALS:ALIEN-CALLBACK # #))
;   (hint: For more precise location, try *BREAK-ON-SIGNALS*.)
;   Unsupported callback argument type:
; #<ALIEN-SYSTEM-AREA-POINTER-TYPE SB-SYS:SYSTEM-AREA-POINTER>

and

; compiling (DEFCALLBACK READ-INT-FROM-POINTER ...)
; file: /opt/home/simon/lisp_packages/cffi-luis/tests/callbacks.lisp
; in: DEFCALLBACK READ-INT-FROM-POINTER
;     (CFFI:DEFCALLBACK CFFI-TESTS::READ-INT-FROM-POINTER
;                     :VOID
;                     ((CFFI-TESTS::A :POINTER))
;                     (SETQ CFFI-TESTS::*INT* (CFFI:MEM-REF
; CFFI-TESTS::A :INT)))
; --> PROGN CFFI-SYS:%DEFCALLBACK SETF LET* LET* MULTIPLE-VALUE-BIND
; LET 
; --> ALIEN-SAP SB-ALIEN::ALIEN-LAMBDA 
; ==>
;   (SB-ALIEN-INTERNALS:ALIEN-CALLBACK (FUNCTION VOID
; SYSTEM-AREA-POINTER)
;                                      (LAMBDA (CFFI-TESTS::A)
;                                        (CFFI::INVERSE-TRANSLATE-OBJECTS
;                                         (CFFI-TESTS::A)
;                                         (:POINTER)
;                                         :VOID
;                                         (BLOCK
;                                             CFFI-TESTS::READ-INT-FROM-POINTER
;                                           (SETQ CFFI-TESTS::*INT*
; #)))))
; 
; caught ERROR:
;   (in macroexpansion of (SB-ALIEN-INTERNALS:ALIEN-CALLBACK # #))
;   (hint: For more precise location, try *BREAK-ON-SIGNALS*.)
;   cannot use values types here

Andras





More information about the cffi-devel mailing list