yacc man page on OpenBSD

Man page or keyword search:  
man Server   11362 pages
apropos Keyword Search (all sections)
Output format
OpenBSD logo
[printable version]

YACC(1)			   OpenBSD Reference Manual		       YACC(1)

NAME
     yacc - an LALR(1) parser generator

SYNOPSIS
     yacc [-dlrtv] [-b file_prefix] [-o output_file] [-p symbol_prefix] file

DESCRIPTION
     yacc reads the grammar specification in file 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
     y.tab.c.

     The options are as follows:

     -b file_prefix
	     The -b option changes the prefix prepended to the output file
	     names to the string denoted by file_prefix.  The default prefix
	     is the character y.

     -d	     The -d option causes the header file y.tab.h to be written.

     -l	     If the -l option is not specified, yacc will insert #line
	     directives in the generated code.	The #line directives let the C
	     compiler 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.  #line directives specified by the
	     user will be retained.

     -o output_file
	     The -o option specifies an explicit name for the parser's output
	     file name instead of the default.	The names of the other output
	     files are constructed from output_file as described under the -d
	     and -v options.

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

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

     -t	     The -t option changes the preprocessor directives generated by
	     yacc so that debugging statements will be incorporated in the
	     compiled code.

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

ENVIRONMENT
     TMPDIR  Name of directory where temporary files are to be created.

TABLES
     The names of the tables generated by this version of yacc are ``yylhs'',
     ``yylen'', ``yydefred'', ``yydgoto'', ``yysindex'', ``yyrindex'',
     ``yygindex'', ``yytable'', and ``yycheck''.  Two additional tables,
     ``yyname'' and ``yyrule'', are created if YYDEBUG is defined and non-
     zero.

FILES
     y.code.c
     y.tab.c
     y.tab.h
     y.output
     /tmp/yacc.aXXXXXXXXXX
     /tmp/yacc.tXXXXXXXXXX
     /tmp/yacc.uXXXXXXXXXX

EXIT STATUS
     The yacc utility exits 0 on success, and >0 if an error occurs.

DIAGNOSTICS
     If there are rules that are never reduced, the number of such rules is
     written to the standard error.  If there are any LALR(1) conflicts, the
     number of conflicts is also written to the standard error.

SEE ALSO
     yyfix(1)

STANDARDS
     The yacc utility is compliant with the IEEE Std 1003.1-2008 (``POSIX'')
     specification, though its presence is optional.

     The flags [-or] are extensions to that specification.

HISTORY
     Yacc was originally developed at AT&T by Stephen C. Johnson.

     Berkeley Yacc was originally developed using PCC on a VAX with the intent
     of being as compatible as possible with AT&T Yacc.	 Much is owed to the
     unflagging efforts of Keith Bostic.  His badgering kept me working on
     Yacc long after I was ready to quit.

     Berkeley Yacc is based on the excellent algorithm for computing LALR(1)
     lookaheads developed by Tom Pennello and Frank DeRemer.  The algorithm is
     described in their almost impenetrable article in TOPLAS 4,4.

     Finally, much credit must go to those who pointed out deficiencies of
     earlier releases.	Among the most prolific contributors were Benson I.
     Margulies, Dave Gentzel, Antoine Verheijen, Peter S. Housel, Dale Smith,
     Ozan Yigit, John Campbell, Bill Sommerfeld, Paul Hilfinger, Gary
     Bridgewater, Dave Bakken, Dan Lanciani, Richard Sargent, and Parag Patel.

AUTHORS
     The yacc utility was written by Robert Corbett.

OpenBSD 4.9		       October 18, 2010			   OpenBSD 4.9
[top]

List of man pages available for OpenBSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net