anchor.diff:  					      (while (keyword? (= v (car ,p)))
   							     nil
   						    (?
  -						      ,@(mapcan (fn `((eq v ,(make-symbol (symbol-name _) *keyword-package*))
  -											  (= ,p (cdr ,p)
  -											     ,_ (car ,p)
  -												 ,p (cdr ,p))))
  +						      ,@(mapcan [`((eq v ,(make-symbol (symbol-name _) *keyword-package*))
  +										   (= ,p (cdr ,p)
  +										      ,_ (car ,p)
  +											  ,p (cdr ,p)))]
   									    (carlist key-args))
   						      (return-from compexp nil)))))))
             ,@(& argdefs (main argdefs))
  
positive.code:        (main argdefs))))
  
  (defun compile-argument-expansion-function-body (fun-name adef p toplevel-continuer names)
    `(with ,(mapcan (fn `(,_ ,(list 'quote _))) names)
       ,@(compile-argument-expansion-0 adef p)
       ((%%native ,(compiled-function-name *transpiler* fun-name)) ,@toplevel-continuer ,@names)))
  
  
negative.code: ;;;;; tré – Copyright (c) 2008–2013 Sven Michael Klose <pixel@copei.de>
  
  (defun compile-argument-expansion-defaults (defaults)
    (mapcar [`(& (eq ,_ ,(list 'quote _))
  		       (= ,_ ,(assoc-value _ defaults)))]
  		  (carlist defaults)))
  
  (defun compile-argument-expansion-0 (adef p &optional (argdefs nil) (key-args nil))
  