Opened 9 years ago

Closed 9 years ago

#711 closed defect (fixed)

Win64 FFI issues

Reported by: gb Owned by: gb
Priority: normal Milestone:
Component: Runtime (threads, GC) Version: trunk
Keywords: Cc:

Description

(defcallback foo (:double-float a 
                  :double-float b 
                  :double-float c 
                  :double-float d 
                  :double-float e
                  :double-float f
                  :double-float g 
                  :double-float)
  (format t "~&~s" (list a b c d e f g))
  (+ a b c d e f g))

(ff-call foo :double-float 1.0d0 :double-float 2.0d0 :double-float 3.0d0 :double-float 4.0d0 :double-float 5.0d0 :double-float 6.0d0 :double-float 7.0d0 :double-float) 

prints and returns:

(1.0D0 2.0D0 3.0D0 4.0D0 1.398752D-316 0.0D0 1.3987457D-316)
10.0D0

I'm fairly sure that the caller's putting arguments (after the first 4) in the wrong place (e.g., that the callback's right and the bug's in FF-CALL.)

Change History (2)

comment:1 Changed 9 years ago by gb

  • Owner set to gb
  • Status changed from new to assigned

comment:2 Changed 9 years ago by rme

  • Resolution set to fixed
  • Status changed from assigned to closed

fixed by r14156

Note: See TracTickets for help on using tickets.