gnatprep
¶--version
Display copyright and version, then exit, disregarding all other options.
--help
If --version
was not used, display usage and then exit, disregarding
all other options.
-b
Causes both preprocessor lines and the lines deleted by preprocessing to be replaced by blank lines in the output source file, preserving line numbers in the output file.
-c
Causes both preprocessor lines and the lines deleted
by preprocessing to be retained in the output source as comments marked
with the special string "--! "
. This option also results in line numbers
being preserved in the output file.
-C
Causes comments to be scanned. Normally comments are ignored by
gnatprep
. If you specify this option, gnatprep
scans
comments and any $symbol substitutions performed as in program
text. You will find this particularly useful when structured
comments are used (e.g., for programs written in a pre-2014 version
of the SPARK Ada subset). This switch is not available
when doing integrated preprocessing (it would be useless in this
context since comments are always ignored by the compiler).
-D`symbol'[=`value']
Defines a new preprocessing symbol with the specified value. If you
don’t specify a value, the symbol is defined to be True
. You can
use this switch instead of providing a definition file.
-r
Causes gnatprep
to generate a Source_Reference
pragma that
references the original input file, so that error messages will use
the file name of this original file. The use of this switch implies
that preprocessor lines are not to be removed from the file, so
the -b
and -c
are always enabled.
If the file to be preprocessed contains multiple units, you
must call gnatchop
on the the output file from
gnatprep
. If a Source_Reference
pragma is present
in the preprocessed file, it will be respected by
gnatchop -r
so that the final chopped files will correctly refer to the original
input source file passed to gnatprep
.
-s
Causes a sorted list of symbol names and values to be listed on the standard output file.
-T
Use LF as line terminators when writing files. By default the line terminator of the host (LF under unix, CR/LF under Windows) is used.
-u
Causes undefined symbols to be treated as having the value False
in the context of a preprocessor test. If you don’t specify this
switch, gnatprep
will treat an undefined symbol in a #if
or
#elsif
test as an error.
-v
Verbose mode: generates more output about what is done.
Note: if you don’t specify either -b
or -c
,
then preprocessor lines and
deleted lines are completely removed from the output, unless you specify
-r
, in which case gnatprep
enables the -b
switch.