Index: /trunk/ccl/level-1/l1-dcode.lisp
===================================================================
--- /trunk/ccl/level-1/l1-dcode.lisp	(revision 300)
+++ /trunk/ccl/level-1/l1-dcode.lisp	(revision 301)
@@ -951,4 +951,5 @@
 
 ; vector arg is (vector key-index keyvect combined-method) ; the next combined method
+#|
 (defun %%check-keywords (vector-arg args)
   (flet ((do-it (vector-arg args)
@@ -964,4 +965,5 @@
                  (declare (fixnum  key-index keys-in keyvect-len))
                  (when (logbitp 0 keys-in) (odd-keys-error vector-arg (collect-lexpr-args args key-index args-len)))
+		 (setq aok (%cadr (pl-search args :allow-other-keys)))
                  (do ((i key-index (+ i 2))
                       (kargs (nthcdr key-index args) (cddr kargs)))
@@ -991,4 +993,13 @@
       (with-list-from-lexpr (args-list args)
         (do-it vector-arg args-list)))))
+|#
+
+(defun %%check-keywords (vector-arg args)
+  (let ((method (%svref vector-arg 2)))
+    (if (listp args)
+      (apply method args)
+      (%apply-lexpr-tail-wise method args))))
+  
+
 
 ; called from %%call-next-method-with-args - its the key-or-init-fn 
