src/: Lift keyword-argument protocol from effective methods to messages.
[sod] / src / builtin.lisp
index 5897da0..776d3a1 100644 (file)
@@ -294,8 +294,8 @@ static const SodClass *const ~A__cpl[] = {
     ((message initialization-message))
   'initialization-effective-method)
 
-(defmethod method-keyword-argument-lists
-    ((method initialization-effective-method) direct-methods state)
+(defmethod sod-message-keyword-argument-lists
+    ((message initialization-message) (class sod-class) direct-methods state)
   (append (call-next-method)
          (mapcan (lambda (class)
                    (let* ((initargs (sod-class-initargs class))
@@ -317,8 +317,7 @@ static const SodClass *const ~A__cpl[] = {
                                         (report-inheritance-path
                                          state class))
                                       arglist)))))
-                 (sod-class-precedence-list
-                  (effective-method-class method)))))
+                 (sod-class-precedence-list class))))
 
 (defmethod lifecycle-method-kernel
     ((method initialization-effective-method) codegen target)