X-Git-Url: https://git.distorted.org.uk/~mdw/sod/blobdiff_plain/357885be46389c70dc9e7c7859f47af68aeb58ae..65b1d9d7baec2f81b713122356955d195971f1aa:/src/method-proto.lisp diff --git a/src/method-proto.lisp b/src/method-proto.lisp index c8b47ad..60a10eb 100644 --- a/src/method-proto.lisp +++ b/src/method-proto.lisp @@ -86,7 +86,7 @@ :reader method-entry-chain-head) (chain-tail :initarg :chain-tail :type sod-class :reader method-entry-chain-tail) - (role :initarg :role :type (or :keyword null) :reader method-entry-role)) + (role :initarg :role :type (or keyword null) :reader method-entry-role)) (:documentation "An entry point into an effective method. @@ -293,13 +293,11 @@ (c-type-subtype (sod-method-type direct-method)) (lambda (var) (ensure-var codegen *sod-tmp-ap* c-type-va-list) - (emit-inst codegen - (make-va-copy-inst *sod-tmp-ap* - *sod-ap*)) + (deliver-call codegen :void "va_copy" + *sod-tmp-ap* *sod-ap*) (apply #'deliver-call codegen var function arguments) - (emit-inst codegen - (make-va-end-inst *sod-tmp-ap*)))) + (deliver-call codegen :void "va_end" *sod-tmp-ap*))) (apply #'deliver-call codegen target function arguments)))) (export 'ensure-ilayout-var) @@ -409,7 +407,7 @@ (make-trampoline codegen (sod-method-class method) (lambda (target) (invoke chain target))) - 0)) + *null-pointer*)) (invoke (chain target) (if (null chain) (funcall kernel target)