Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
YACC(1)			  BSD General Commands Manual		       YACC(1)

     yacc -- an	LALR(1)	parser generator

     yacc [-dlrtv] [-b file_prefix] [-o	output_filename] [-p symbol_prefix]

     Yacc reads	the grammar specification in the file filename and generates
     an	LR(1) parser for it.  The parsers consist of a set of LALR(1) parsing
     tables and	a driver routine written in the	C programming language.	 Yacc
     normally writes the parse tables and the driver routine to	the file

     The following options are available:

     -b	file_prefix
	     Change the	prefix prepended to the	output file names to the
	     string denoted by file_prefix.  The default prefix	is the charac-
	     ter y.

     -d	     Cause the header file to be written.

     -l	     If	the -l option is not specified,	yacc will insert #line direc-
	     tives in the generated code.  The #line directives	let the	C com-
	     piler relate errors in the	generated code to the user's original
	     code.  If the -l option is	specified, yacc	will not insert	the
	     #line directives.	Any #line directives specified by the user
	     will be retained.

     -o	output_filename
	     Cause yacc	to write the generated code to output_filename instead
	     of	the default file,

     -p	symbol_prefix
	     Change the	prefix prepended to yacc-generated symbols to the
	     string denoted by symbol_prefix.  The default prefix is the
	     string yy.

     -r	     Cause yacc	to produce separate files for code and tables.	The
	     code file is named	y.code.c, and the tables file is named

     -t	     Change the	preprocessor directives	generated by yacc so that de-
	     bugging statements	will be	incorporated in	the compiled code.

     -v	     Cause a human-readable description	of the generated parser	to be
	     written to	the file y.output.

     If	the environment	variable TMPDIR	is set,	the string denoted by TMPDIR
     will be used as the name of the directory where the temporary files are


     If	there are rules	that are never reduced,	the number of such rules is
     reported on standard error.  If there are any LALR(1) conflicts, the num-
     ber of conflicts is reported on standard error.

BSD				 May 24, 1993				   BSD


Want to link to this manual page? Use this URL:

home | help