История изменений
Исправление ados, (текущая версия) :
А почему так не работает?
CL-FFTW-BINDINGS> (defctype c-complex-double-ptr :pointer)
C-COMPLEX-DOUBLE-PTR
CL-FFTW-BINDINGS> (defcfun cimag :double
(z c-complex-double-ptr))
WARNING: redefining CL-FFTW-BINDINGS::CIMAG in DEFUN
CIMAG
CL-FFTW-BINDINGS> (let ((lisp-z (complex 12 13)))
(with-foreign-object (x '(:struct c-complex-double))
(setf (mem-ref x '(:struct c-complex-double))
lisp-z)
(values
(cimag x)
(mem-ref x '(:struct c-complex-double)))))
1.4582406633972006d-303
#C(12.0d0 13.0d0)
CL-FFTW-BINDINGS>
Исходная версия ados, :
А почему так не работает?
CL-FFTW-BINDINGS> (defctype c-complex-double-ptr :pointer)
C-COMPLEX-DOUBLE-PTR
CL-FFTW-BINDINGS> (defcfun cimag :double
(z c-complex-double-ptr))
WARNING: redefining CL-FFTW-BINDINGS::CIMAG in DEFUN
CIMAG
CL-FFTW-BINDINGS> (let ((lisp-z (complex 12 13)))
(with-foreign-object (x '(:struct c-complex-double))
(setf (mem-ref x '(:struct c-complex-double))
lisp-z)
(cimag x)))
1.4582406633972006d-303
CL-FFTW-BINDINGS>