anchor.diff:  
   (defmacro optimized-call (allow-override-p instance method &rest args
                             &environment env)
  -  (make-optimized instance method
  +  (make-optimized instance
       :instance-resolver #'compile-time-resolve-this
       :args args
  -    :resolver `(resolve-call ,allow-override-p instance method args types)
  +    :resolver `(resolve-call ,allow-override-p instance ,method args types)
       :env env))
   
   (defmacro optimized-new (class-or-instance &rest args
                            &environment env)
  -  (make-optimized class-or-instance nil
  +  (make-optimized class-or-instance
       :instance-resolver #'compile-time-resolve-ctor-this
       :args args
       :resolver `(resolve-new instance args types)
       :env env))
   
  -(defun resolve-call (allow-override-p instance method args &optional fix-types)
  +(defun resolve-call (allow-override-p instance method args fix-types)
     ;; (format *trace-output* "cache miss for ~A::~A~%" instance method)
     (let ((name method)
           (method (etypecase method
  
positive.code:                       (for sym in argsyms)
                        (unless (constantp arg env)
                          (collect `(,sym ,arg))))
                    (method ,method)
                    (types ',fix-types)
                    (args ,(if (zerop (number-of-non-constantp args))
                               `',args
  
negative.code:      (type-of object))))
  
  (defun parse-optimized-call-args (forms)
    (if (some #'keywordp forms)
        (let ((type nil))
          (iter (for form in forms)
            (cond
              ((keywordp form)
               (when type
  