| Allegro CL version 10.0 New since the initial 10.0 release. |
Arguments: &optional action path tag
This function uses the value of *format-arg-count-stats*
to report on format
string compilations. The value of that variable should be a list of
six fixnums and this function returns a list based on those values
(and returns nil
if *format-arg-count-stats*
is not a list of six
fixnums).
The exact behavior depends on the value of action:
:report
or :reset
: return the
list of six fixnums that is the value of *format-arg-count-stats*
(return nil
if *format-arg-count-stats*
is
not a list of six fixnums).
:report
: return a
list of the form
(:format-arg-stats :all N1 :missing N2 :equal N3 :extra N4 :complex N5 :error N6)
where the Ni are the six fixnums in the list that is the value of
*format-arg-count-stats*
. (Return nil
if *format-arg-count-stats*
is not a list of six
fixnums.) See below for an interpretation of the values.
:reset
: behavior is
the same as for :report
but additionally the value
of *format-arg-count-stats*
is set to (list 0 0 0
0 0 0). Again return nil
if
*format-arg-count-stats*
is not a list of six
fixnums but reset the value of *format-arg-count-stats*
in that case
as well.
The six value are:
:all
): the number of format forms examined (should
equal the sum of remaining values).
:missing
): the number of format forms with
insufficient arguments (N needed, fewer than N supplied).
:equal
): the number of format forms with just as
many arguments supplied as needed.
:extra
): the number of format forms with more
arguments supplied than needed.
:complex
): the number of format forms that are too
complex to analyse.
:error
): the number of format forms that contain a
syntax error.
Statistics about compilation of format forms are collected when
compilation is done so that the
comp:verify-format-argument-count-switch
compiler switch has the value t
, 1, 2, 3, or
4. If that switch has the value nil
or 0 when
the compilation is done, no statistics are kept.
If the path argument names an existing
file, one or two line will be appended to the
files. If *compile-file-pathname*
is
non-nil
, its value and the value
of tag will be written to the first line
and the list with labels will be written as the second line. If
*compile-file-pathname*
is nil
, just one line will be written, the
list with labels.
path can also be a stream suitable for writing to.
See Checking format forms during compilation in miscellaneous.htm for more information.
Copyright (c) 1998-2019, Franz Inc. Oakland, CA., USA. All rights reserved.
This page is new in the 10.0 release.
Created 2019.8.20.
| Allegro CL version 10.0 New since the initial 10.0 release. |