X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fdebug-info.lisp;h=3ca15e08e97722ed9f5294d5c964a48175273b74;hb=568214ddf4c8ecc881caec98e20848d017974ec0;hp=acb051c168391e8ee45396f7927f39d85407d3dd;hpb=3c5609fe910bae51ff885c8cfd4be879151e7489;p=sbcl.git diff --git a/src/code/debug-info.lisp b/src/code/debug-info.lisp index acb051c..3ca15e0 100644 --- a/src/code/debug-info.lisp +++ b/src/code/debug-info.lisp @@ -232,8 +232,10 @@ ;;; to at least know which function is an XEP for the real function ;;; (which would be useful info anyway). -;;;; debug source +;;;; DEBUG SOURCE +;;; There is one per compiled file and one per function compiled at +;;; toplevel or loaded from source. (def!struct (debug-source #-sb-xc-host (:pure t)) ;; This slot indicates where the definition came from: ;; :FILE - from a file (i.e. COMPILE-FILE) @@ -257,13 +259,15 @@ ;; :DEBUG-SOURCE-FORM is :LISP. (start-positions nil :type (or (simple-array * (*)) null)) ;; If from :LISP, this is the function whose source is form 0. - (info nil)) + (function nil) + ;; Additional information from (WITH-COMPILATION-UNIT (:SOURCE-PLIST ...)) + (plist *source-plist*)) ;;;; DEBUG-INFO structures (def!struct debug-info ;; Some string describing something about the code in this component. - (name (missing-arg) :type simple-string) + (name (missing-arg) :type t) ;; A list of DEBUG-SOURCE structures describing where the code for this ;; component came from, in the order that they were read. ;; @@ -271,7 +275,7 @@ ;; *** NOTE: the offset of this slot is wired into the fasl dumper ;; *** so that it can backpatch the source info when compilation ;; *** is complete. - (source nil :type list)) + (source nil)) (def!struct (compiled-debug-info (:include debug-info)