X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Finfo-functions.lisp;h=66a834777b7bc931b7cc8e38fb6f381cec8ecb33;hb=31361af9eb64344f521abbb245ea784c76c746e5;hp=df45fa3bdaa7594607490642bfdcc3893fc8bf15;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/compiler/info-functions.lisp b/src/compiler/info-functions.lisp index df45fa3..66a8347 100644 --- a/src/compiler/info-functions.lisp +++ b/src/compiler/info-functions.lisp @@ -16,9 +16,6 @@ ;;;; files for more information. (in-package "SB!C") - -(file-comment - "$Header$") ;;; Check the legality of a function name that is being introduced. ;;; -- If it names a macro, then give a warning and blast the macro @@ -72,6 +69,15 @@ (frob :source-transform) (frob :assumed-type))) (values)) + +;;; part of what happens with DEFUN, also with some PCL stuff: +;;; Make NAME known to be a function definition. +(defun become-defined-function-name (name) + (proclaim-as-function-name name) + (when (eq (info :function :where-from name) :assumed) + (setf (info :function :where-from name) :defined) + (if (info :function :assumed-type name) + (setf (info :function :assumed-type name) nil)))) ;;;; ANSI Common Lisp functions which are defined in terms of the info ;;;; database