Debug-sources represent how to get back the source for some code. The
source is either a file (
a stream (something particular to CMUCL,
When compiling a source, the compiler counts each top-level form it
processes, but when the compiler handles multiple files as one block
compilation, the top-level form count continues past file boundaries.
code-location-top-level-form-offset returns an offset
that does not always start at zero for the code-location’s
debug-source. The offset into a particular source is
Inside a top-level form, a code-location’s form number indicates the subform corresponding to the code-location.
This function returns an indication of the type of source. The following are the possible values:
from a file (obtained by
from Lisp (obtained by
from a non-file stream (CMUCL supports
This function returns the actual source in some sense represented by
debug-source, which is related to
the pathname of the file.
some descriptive string that’s otherwise useless.
This function returns the universal time someone created the source.
This may be
nil if it is unavailable.
This function returns the time someone compiled the source. This is
nil if the source is uncompiled.
This returns the number of top-level forms processed by the compiler before compiling this source. If this source is uncompiled, this is zero. This may be zero even if the source is compiled since the first form in the first file compiled in one compilation, for example, must have a root number of zero—the compiler saw no other top-level forms before it.