From 65f8d8bf8e9a709e549917837f7c01a31aad3928 Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Wed, 19 Mar 2008 01:17:52 +0100 Subject: Make TYPESPEC a struct type. darcs-hash:e915984995e05d399993c4d602a7c4949053ca66 --- Lisp/method-definition.lisp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'Lisp/method-definition.lisp') diff --git a/Lisp/method-definition.lisp b/Lisp/method-definition.lisp index ad3b45a..377247e 100644 --- a/Lisp/method-definition.lisp +++ b/Lisp/method-definition.lisp @@ -407,7 +407,7 @@ __define-objective-c-generic-function__. (method-name (generic-function-name->selector (generic-function-name gf))) (registered-p (foreign-class-registered-p class)) - (return-type (method-return-type method)) + (return-type (typespec (method-return-type method))) (method-argument-types (method-argument-types method)) (argument-types (list* (first method-argument-types) :selector @@ -421,9 +421,10 @@ __define-objective-c-generic-function__. (gensym "ARG")) argument-types))) (eval (loop for type in argument-types + for typespec = (typespec type) for symbol in arg-symbols - collect (list symbol (typespec->c-type type)) into cffi-lambda-list - if (member (typespec-primary-type type) '(:id :class :selector)) + collect (list symbol (typespec->c-type typespec)) into cffi-lambda-list + if (member (typespec-primary-type typespec) '(:id :class :selector)) collect `(intern-pointer-wrapper ',type :pointer ,symbol) into arguments else -- cgit v1.2.3