X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Fearly-full-eval.lisp;h=aa95aaaabda574ce63d71a7165c2752d12739847;hb=36717964ebcff8353035062789c08f223feccf1a;hp=97c85ef867631ddc52a29efd9e0cdf8ee1cec510;hpb=9b1fade83db8453b75b8c7380eb12ce41b5b889c;p=sbcl.git diff --git a/src/code/early-full-eval.lisp b/src/code/early-full-eval.lisp index 97c85ef..aa95aaa 100644 --- a/src/code/early-full-eval.lisp +++ b/src/code/early-full-eval.lisp @@ -21,7 +21,12 @@ ;; compiler/main and code/deftypes-for-target. (sb!kernel::!defstruct-with-alternate-metaclass interpreted-function - :slot-names (name lambda-list env declarations documentation body source-location) + ;; DEBUG-NAME and DEBUG-LAMBDA-LIST are initially a copies of the proper + ;; ones, but is analogous to SIMPLE-FUN-NAME and ARGLIST in the sense that it + ;; is they are there only for debugging, and do not affect behaviour of the + ;; function -- so DEFMACRO can set them to more informative values. + :slot-names (name debug-name lambda-list debug-lambda-list env + declarations documentation body source-location) :boa-constructor %make-interpreted-function :superclass-name function :metaclass-name static-classoid @@ -34,8 +39,8 @@ (defun make-interpreted-function (&key name lambda-list env declarations documentation body source-location) (let ((function (%make-interpreted-function - name lambda-list env declarations documentation body - source-location))) + name name lambda-list lambda-list env + declarations documentation body source-location))) (setf (sb!kernel:funcallable-instance-fun function) #'(lambda (&rest args) (interpreted-apply function args)))