diff options
-rw-r--r-- | Lisp/internal-utilities.lisp | 7 | ||||
-rw-r--r-- | Lisp/libobjcl.lisp | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/Lisp/internal-utilities.lisp b/Lisp/internal-utilities.lisp index b23905f..b610096 100644 --- a/Lisp/internal-utilities.lisp +++ b/Lisp/internal-utilities.lisp @@ -87,9 +87,10 @@ ;; Compatibility with older versions of CFFI. (unless (fboundp 'foreign-funcall-pointer) (defmacro foreign-funcall-pointer (pointer options &rest args) - (if (find-symbol "FOREIGN-FUNCALL-POINTER" '#:cffi) - `(cffi:foreign-funcall-pointer ,pointer ,options ,@args) - `(cffi:foreign-funcall (,pointer ,@options) ,@args)))) + (let ((foreign-funcall-pointer-sym (find-symbol "FOREIGN-FUNCALL-POINTER" '#:cffi))) + (if foreign-funcall-pointer-sym + `(,foreign-funcall-pointer-sym ,pointer ,options ,@args) + `(cffi:foreign-funcall (,pointer ,@options) ,@args))))) ;; Caching of function values. diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp index de325cb..421c014 100644 --- a/Lisp/libobjcl.lisp +++ b/Lisp/libobjcl.lisp @@ -1005,7 +1005,7 @@ __enable-method-syntax__. (defun objcl-class-backed-by-lisp-class-p/pointer (class-ptr) (not (zerop (%objcl-class-backed-by-lisp-class-p class-ptr)))) -#? c-pointer t -> +#? c-pointer t -> &rest t (defun objcl-class-set-backed-by-lisp-class/pointer (class-ptr backed-p) (%objcl-class-set-backed-by-lisp-class class-ptr (if backed-p 1 0))) |