tdfc2(1)
NAME
tdfc2 - C to TDF/ANDF producer
SYNOPSIS
tdfc2 [ options ] [ input-file ] [ output-file ]
DESCRIPTION
In its default action, tdfc2 translates the input C source file, inputfile, into a TDF/ANDF capsule, output-file. If the output file name is
omitted or is -, the standard output is used. If the input file name
is omitted or is -, the standard input is used.
By use of the -sspec-file option, tdfc2 can additionally be made to
output a C spec file which contains information enabling intermodule
analysis to be performed. Alternatively usage and error information
suitable for processing by other tools can be output using the
-dopt=dump-file option.
tdfc2 also has a preprocessing action, when invoked with the -E option,
in which the input C source file, input-file, is preprocessed to an
output file, ouput-file.
Finally tdfc2 has a spec linker action, when invoked with the -S
option, in which any number of spec input files, input-file, are combined into a spec output file, which may be specified using the -s
option. Any extra code generation resulting from this linking phase is
written to the TDF capsule, output-file.
It is recommended that tdfc2 is invoked via tcc(1). The -Yc++ option
is required to enable the C capabilities. Files with a .c suffix are
recognised as C source files. Options can be passed directly to tdfc2
using the -Wc,opt option to tcc.
OPTIONS
The command-line options can appear in any order and can be interspersed with the input and output files. All the multi-part options
can be given either as one or two command-line arguments, so that -Idir
and -I dir are equivalent. Most of the option handling required is
handled by tcc(1) when this is being used, but options may be passed
directly to tdfc2 using the -Wc,opt option.
- -Apredicate(tokens)
- Asserts that the given predicate is true. The special case -Aundefines all the built-in predicates (of which there are none).
- -Dmacro
- Defines the given macro to be 1.
- -Dmacro=tokens
- Defines the given macro to be the given sequence of preprocessing tokens.
- -E Enables preprocessing mode in which the input C source file is
- preprocessed into the output file.
- -Ffile Causes a list of options to be read from file.
- -H Enables verbose inclusion mode in which warnings are printed at
- the start and the end of each included source file.
- -Idirectory
- Adds the given directory to the list searched by tdfc2 for included source files. No such directories are built into tdfc2.
- -Nname:directory
- Is identical to -Idirectory except that it also associates the given identifier with the directory.
- -S Enables spec linker mode in which any number of C spec input
- files are linked into a single C spec output file.
- -Umacro
- Undefines the given macro. The special case -U- undefines all the built-in macros. These are __FILE__, __LINE__, __TIME__, __DATE__, __STDC__ and __STDC_VERSION__.
- -V Causes tdfc2 to print the name of each function to the standard
- output as it is compiled.
- -Woption
- Causes tdfc2 to print a warning in the circumstances described by option. The special case -Wall enables a wide range of warnings.
- -X Disables exception handling. The current implementation can be
- a large run-time overhead if not required. The effect of linking any module compiled with this option with a module which throws an exception is undefined. This is equivalent to -j-e.
- -Znumber
- Sets the maximum number of errors printed by tdfc2 before bailing out to be number. The default is 32.
- -a Causes tdfc2 to apply complete program analysis to its input
- files. That is it assumes that no other translation units need to be linked in order for the program to execute.
- -c Disables TDF output. The output file will still be a valid TDF
- capsule, only it will contain no information. This is equivalent to -j-c.
- -dopt=dump-file
- Causes tdfc2 to dump information about its input file into dumpfile. opt is a series of characters describing the information to be dumped; c for string literals, e for errors, h for header files, k for keywords, l for local variables, m for macros, s for scopes, and u for usage. a is equivalent to ehlmu.
- -efile Specifies the given file as an end-up file. This is equivalent
- to adding a #include directive for this file at the end of the input source file.
- -ffile Specifies the given file as a start-up file. This is equivalent
- to adding a #include directive for this file at the start of the input source file.
- -g Specifies that the output TDF capsule should also contain infor
- mation to allow for the generation of run-time debugging directives. This is equivalent to -jg.
- -h Causes tdfc2 to print a full list of its available command-line
- options. This includes a number not documented here which are unlikely to prove useful to the normal user.
- -jopt Sets the TDF output options given by opt.
- -mopt Sets the error formatting options given by opt.
- -nport-table
- Specifies that the given portability table should be used to specify the basic configuration parameters.
- -ooutput-file
- Gives an alternative method of specifying the output file.
- -q Causes tdfc2 to quit immediately without processing its input
- file. This is useful primarily in version and option queries.
- -sspec-file
- Causes tdfc2 to write a C spec file describing the input source file to spec-file.
- -t Specifies that tdfc2 should include token declarations in its
- output TDF capsule. While these are strictly unnecessary, they help when pretty-printing the output. This is equivalent to -jt.
- -u name ... name
- Causes tdfc2 to print the unmangle forms of the given mangled identifier names.
- -v Causes tdfc2 to print its version number.
- -w Disables all warning messages. This is equivalent to -mw.
- -z Forces tdfc2 to produce an output file even if compilation
- errors occur. The effect of installing a TDF capsule produced using this option is undefined. This is equivalent to -mz.