From: Mark Wooding Date: Sat, 29 Aug 2015 13:36:34 +0000 (+0100) Subject: src/method-impl.lisp: Invoke `after' methods, even in `void' messages. X-Git-Tag: 0.2.0~42 X-Git-Url: https://git.distorted.org.uk/~mdw/sod/commitdiff_plain/cb35f25edb5a344605ec0501c7118dc0e595b875?hp=a898c9e295c84062379cda5cd42f113bee0138e2 src/method-impl.lisp: Invoke `after' methods, even in `void' messages. Previously, the code would have suppressed them for some bizarre reason. The `voidp' variable is no longer needed, so remove it. --- diff --git a/src/method-impl.lisp b/src/method-impl.lisp index 1cb9479..49c6676 100644 --- a/src/method-impl.lisp +++ b/src/method-impl.lisp @@ -323,12 +323,11 @@ method (let* ((message-type (sod-message-type message)) (return-type (c-type-subtype message-type)) - (voidp (eq return-type (c-type void))) (basic-tail (effective-method-basic-argument-names method))) (flet ((method-kernel (target) (dolist (before before-methods) (invoke-method codegen :void basic-tail before)) - (if (or voidp (null after-methods)) + (if (null after-methods) (funcall body target) (convert-stmts codegen target return-type (lambda (target)