anchor.diff:  ;;; must remove that compiler macro entry as well.
   
   (defun (setf fdefinition) (new-definition function-name)
  -  (unless (function-name-p function-name)
  -    (error "not a function name ~s" function-name))
  -  (unless (functionp new-definition)
  -    (error 'type-error :datum new-definition :expected-type 'function))
  +  (declare (cl:type function-name function-name)
  +	   (cl:type function new-definition))
     ;; First see whether there is a special operator entry for the name.
     (let ((specop-entry
   	  (find function-name (special-operators *global-environment*)
  
positive.code: ;;; macro entry is the one that is valid.  
  
  (defun fdefinition (function-name)
    (unless (function-name-p function-name)
      (error "not a function name ~s" function-name))
    ;; First see if there is a global macro entry with the right name.
    (let ((macro-entry
  	  ;; We can use EQ to test the name because names
  
negative.code: ;;; code can not count on anything else, we might as well just return
  ;;; T.
  
  (defun fboundp (function-name)
    (declare (cl:type function-name function-name))
    (let ((entry (find function-name
  		     (append (macros *global-environment*)
  			     (functions *global-environment*)
  