src/method-impl.lisp (compute-method-entry-functions): Reorder `let*'.
authorMark Wooding <mdw@distorted.org.uk>
Sun, 30 Aug 2015 09:58:38 +0000 (10:58 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Sun, 6 Sep 2015 14:54:24 +0000 (15:54 +0100)
Currently the `method entry details' and `effective method function
details' blocks are independent, but they won't be soon.

src/method-impl.lisp

index e6368e7..d271481 100644 (file)
                                 :class class
                                 :method method))
 
-        ;; Effective method function details.
-        (emf-name (effective-method-function-name method))
-        (ilayout-type (c-type (* (struct (ilayout-struct-tag class)))))
-        (emf-arg-tail (sod-message-no-varargs-tail message))
-        (emf-type (c-type (fun (lisp return-type)
-                               ("sod__obj" (lisp ilayout-type))
-                               . emf-arg-tail)))
-
         ;; Method entry details.
         (chain-tails (remove-if-not (lambda (super)
                                       (sod-subclass-p super message-class))
                     ((endp args) nil)
                   (when (eq (car args) :ellipsis)
                     (return prev))))
-        (entry-target (codegen-target codegen)))
+        (entry-target (codegen-target codegen))
+
+        ;; Effective method function details.
+        (emf-name (effective-method-function-name method))
+        (ilayout-type (c-type (* (struct (ilayout-struct-tag class)))))
+        (emf-arg-tail (sod-message-no-varargs-tail message))
+        (emf-type (c-type (fun (lisp return-type)
+                               ("sod__obj" (lisp ilayout-type))
+                               . emf-arg-tail))))
 
     (flet ((setup-entry (tail)
             (let ((head (sod-class-chain-head tail)))