1.0.20.28: Fewer STYLE-WARNINGs for gf calls.
[sbcl.git] / src / compiler / ir1tran.lisp
index e78d86b..d09ddce 100644 (file)
         (eq (defined-fun-inlinep fun) :notinline)
         (eq (info :function :inlinep name) :notinline))))
 
+;; This will get redefined in PCL boot.
+(declaim (notinline update-info-for-gf))
+(defun maybe-update-info-for-gf (name)
+  (declare (ignorable name))
+  (values))
+
 ;;; Return a GLOBAL-VAR structure usable for referencing the global
 ;;; function NAME.
 (defun find-global-fun (name latep)
      :%source-name name
      :type (if (and (not latep)
                     (or *derive-function-types*
-                        (eq where :declared)
+                        (member where '(:declared :defined-method))
                         (and (member name *fun-names-in-this-file*
                                      :test #'equal)
                              (not (fun-lexically-notinline-p name)))))
-               (info :function :type name)
+               (progn
+                 (maybe-update-info-for-gf name)
+                 (info :function :type name))
                (specifier-type 'function))
      :defined-type (if (eq where :defined)
                        (info :function :type name)