diff --git a/compiler/globaldb.lisp b/compiler/globaldb.lisp index 5b506b8e978c8d50fa9da7c094f76460cb743d15..6a947e2b6f62f266e0fc822e13fb1bb291b79bf7 100644 --- a/compiler/globaldb.lisp +++ b/compiler/globaldb.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman (FAHLMAN@CMUC). ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/globaldb.lisp,v 1.14 1990/10/11 17:35:18 ram Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/globaldb.lisp,v 1.15 1990/11/20 18:37:13 ram Exp $ ;;; ;;; This file provides a functional interface to global information about ;;; named things in the system. Information is considered to be global if it @@ -988,9 +988,11 @@ (define-info-type function type ctype #+new-compiler (if (fboundp name) - (specifier-type (%primitive function-type - (%primitive closure-function - (fdefinition name)))) + (let ((def (fdefinition name))) + (if (eval:interpreted-function-p def) + (eval:interpreted-function-type def) + (specifier-type (%primitive function-type + (%primitive closure-function def))))) (specifier-type 'function)) #-new-compiler (specifier-type 'function))