X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/clg/blobdiff_plain/b04fa0321968bd334d50dcce3120260ad9b00d00..f335841fe3535fc53394ee4f0731e368d31f58b4:/gffi/interface.lisp diff --git a/gffi/interface.lisp b/gffi/interface.lisp index 7800692..4ac7eaa 100644 --- a/gffi/interface.lisp +++ b/gffi/interface.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: interface.lisp,v 1.2 2006/04/26 19:19:14 espen Exp $ +;; $Id: interface.lisp,v 1.4 2006/12/12 14:32:06 espen Exp $ (in-package "GFFI") @@ -166,7 +166,8 @@ (defun foreign-funcall (cname args return-type) (:language :stdc)))) `(funcall (load-time-value - (ffi::foreign-library-function ,cname (ffi::foreign-library :default) + (ffi::foreign-library-function + ,cname (ffi::foreign-library :default) #?(clisp>= 2 40)nil nil (ffi:parse-c-type ',c-function))) ,@fparams))) @@ -227,7 +228,7 @@ (defun mkbinding (name return-type &rest arg-types) (system-area-pointer address)))))) #+clisp (ffi::foreign-library-function name - (ffi::foreign-library :default) + (ffi::foreign-library :default) #?(clisp>= 2 40)nil nil (ffi:parse-c-type c-function))) (return-value-translator (from-alien-function return-type))) (multiple-value-bind (arg-translators cleanup-funcs) @@ -423,7 +424,7 @@ (defun find-next-type-method (name type-spec &optional (error-p t)) (lookup-method (type-spec) (if (and (symbolp type-spec) (find-class type-spec nil)) (let ((class (find-class type-spec))) - #+clisp + #?(or (sbcl>= 0 9 15) (featurep :clisp)) (unless (class-finalized-p class) (finalize-inheritance class)) (search-method-in-cpl-order