tcpplus1
C++ to tdf/andf producer
Usage
tcpplus [options]
[input-file]
[output-file]
Overview
In its default action, tcpplus translates the input C++ source file, input-file, 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, tcpplus 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.
tcpplus 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 tcpplus 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 tcpplus 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 tcpplus using the -Wx,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 tcpplus using the -Wx,opt option.
-
-Apredicate(tokens) -
Asserts that the given predicate is true. The special case
-A-undefines 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
tcpplusfor included source files. No such directories are built intotcpplus.
-
-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__,__STDC_VERSION__, and__cplusplus.
-
-V -
Causes
tcpplusto print the name of each function to the standard output as it is compiled.
-
-Woption -
Causes
tcpplusto print a warning in the circumstances described by option. The special case-Wallenables 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
tcpplusbefore bailing out to be number. The default is 32.
-
-a -
Causes
tcpplusto 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
tcpplusto dump information about its input file into dump-file. opt is a series of characters describing the information to be dumped;cfor string literals,efor errors,hfor header files,kfor keywords,lfor local variables,mfor macros,sfor scopes, andufor usage.ais equivalent toehlmu.
-
-efile -
Specifies the given file as an end-up file. This is equivalent to adding a
#includedirective 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
#includedirective for this file at the start of the input source file.
-
-g -
Specifies that the output TDF capsule should also contain information to allow for the generation of run-time debugging directives. This is equivalent to
-jg.
-
-h -
Causes
tcpplusto 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
tcpplusto quit immediately without processing its input file. This is useful primarily in version and option queries.
-
-sspec-file -
Causes
tcpplusto write a C++ spec file describing the input source file to spec-file.
-
-t -
Specifies that
tcpplusshould 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.
-uname ... name-
Causes
tcpplusto print the unmangle forms of the given mangled identifier names.
-
-v -
Causes
tcpplusto print its version number.
-
-w -
Disables all warning messages. This is equivalent to
-mw.
-
-z -
Forces
tcpplusto 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.
Releases
Unchanged in 6 releases since Debian 2.2 (Potato).