treecc(1)

NAME
treecc - tree compiler-compiler

SYNOPSIS
treecc [ options ] input ...

DESCRIPTION
Treecc converts input files in the treecc syntax into source code that permits creating and walking abstract syntax trees. It is intended for use in developing compilers, in concert with existing tools such as lex(1) and yacc(1). The treecc syntax is described in the treecc texinfo topic.

OPTIONS

-o file, --output file
    Set the name of the output file. If this option is not supplied, then the name of the first input file will be used, with its extension changed to ".c". If the input is stdin, the default output file is "yy_tree.c". This option may be overridden using the "%output" keyword in the input files.

-h file, --header file
    Set the name of the header output file. This is only used for the C and C++ languages. If this option is not supplied, then the name of the output file will be used, with its extension changed to ".h". If the input is stdin, the default header output file is "yy_tree.h". This option may be overriden using the "%header" keyword in the input files. If this option is used with a language that does not require headers, it will be ignored.

-d dir, --output-dir dir
    Set the name of the Java output directory. This is only used for the Java language. If this option is not supplied, then the directory corresponding to the first input file is used. If the input is stdin, the default is the current directory. This option may be overriden using the "%outdir" keyword in the input files. If this option is used with a language other than Java, it will be ignored.

-s dir, --skeleton-dir dir
    Set the name of the directory that contains the skeleton files for the C and C++ node memory managers.

-e ext, --extension ext
    Change the default output file extension to ext, instead of ".c". The value ext can have a leading dot, but this is not required.

-f, --force-create
    Treecc attempts to optimise the creation of output files so that they are only modified if a non-trivial change has occurred in the input. This can reduce the number of source code recompiles when treecc is used in combination with make(1). This option forces the output files to be created, even if they are the same as existing files with the same name. The directive "%option force" can be used in the input files to achieve the same effect as this option.

-n, --no-output
    Suppress the generation of output files. Treecc parses the input files, checks for errors, and then stops.

--help
    Print a usage message for the treecc program.

-v, --version
    Print the version of the treecc program.

--  Marks the end of the command-line options, and the beginning of the input filenames. You may need to use this if your filename begins with '-'. e.g. "treecc -- -input.tc". This is not needed if the input is stdin: "treecc -" is perfectly valid.

AUTHOR
Written by Southern Storm Software, Pty Ltd. http://www.southern-storm.com.au/

SEE ALSO
lex(1), yacc(1), make(1)

DIAGNOSTICS
Exit status is 1 if an error occurred while processing the input. Otherwise the exit status is 0.