yacc man page on IRIX

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



yacc(1)								       yacc(1)

NAME
     yacc - yet another compiler-compiler

SYNOPSIS
     yacc [-vVdlt] [-Q[y|n]] [-p sym_prefix] [-b file_prefix]
     [-P parser] file

DESCRIPTION
     The yacc command converts a context-free grammar into a set of tables for
     a simple automaton that executes an LALR(1) parsing algorithm.  The
     grammar may be ambiguous; specified precedence rules are used to break
     ambiguities.  yacc processes supplementary code set characters in program
     comments and strings, and single-byte supplementary code set characters
     in tokens, according to the locale specified in the LC_CTYPE environment
     variable [see LANG on environ(5)].

     The output file, y.tab.c, must be compiled by the C compiler to produce a
     program yyparse.  This program must be loaded with the lexical analyzer
     program, yylex, as well as main and yyerror, an error handling routine.
     These routines may be supplied by the user; the lex(1) command is useful
     for creating lexical analyzers usable by yacc.  A simple main and yyerror
     are available in liby.  The yyerror routine in liby.a has the following
     signature:	 int yyerror(const char *).  If a user wishes to have a
     yyerror with a different signature, they must define the symbol
     __my_yyerror at the top of their .y file.

     -v	       Prepares the file y.output, which contains a description of the
	       parsing tables and a report on conflicts generated by
	       ambiguities in the grammar.

     -b file_prefix
	       Use file_prefix instead of y as the prefix for all output
	       filenames.

     -p sym_prefix
	       Use sym_prefix instead of yy as the prefix for all external
	       names produced by yacc.	For X/Open compliance, when the
	       environment variable _XPG is set, then the -p option will work
	       as described in the previous sentence.  If the environment
	       variable _XPG is not set, then the -p option will work as
	       described below in the -P option.

     -P file   Location of the common parser; the code contained here is
	       emitted verbatim by yacc in the generated code. This provides
	       compatibility with the old -p flag in AT&T yacc.

     -d	       Generates the file y.tab.h with the #define statements that
	       associate the yacc-assigned ``token codes'' with the user-
	       declared ``token names.''  This association allows source files
	       other than y.tab.c to access the token codes.

									Page 1

yacc(1)								       yacc(1)

     -l	       Specifies that the code produced in y.tab.c will not contain
	       any #line constructs.  This option should only be used after
	       the grammar and the associated actions are fully debugged.

     -Q[y|n]   The -Qy option puts the version stamping information in
	       y.tab.c.	 This allows you to know what version of yacc built
	       the file.  The -Qn option (the default) writes no version
	       information.

     -t	       Compiles runtime debugging code by default.  Runtime debugging
	       code is always generated in y.tab.c under conditional
	       compilation control.  By default, this code is not included
	       when y.tab.c is compiled.  Whether or not the -t option is
	       used, the runtime debugging code is under the control of
	       YYDEBUG, a preprocessor symbol.	If YYDEBUG has a non-zero
	       value, then the debugging code is included.  If its value is
	       zero, then the code will not be included.  The size and
	       execution time of a program produced without the runtime
	       debugging code will be smaller and slightly faster.

     -V	       Prints on the standard error output the version information for
	       yacc.

FILES
     y.output
     y.tab.c
     y.tab.h
	  defines for token names
     yacc.tmp, yacc.debug, yacc.acts
	  temporary files; these names are used only if the TMPDIR environment
	  variable is not set.	If TMPDIR is set, then these temporary files
	  are stored in that directory, using unique names.
     /usr/lib/yaccpar
	  parser prototype for C programs
SEE ALSO
     lex(1)
DIAGNOSTICS
     The number of reduce-reduce and shift-reduce conflicts is reported on the
     standard error output; a more detailed report is found in the y.output
     file.  Similarly, if some rules are not reachable from the start symbol,
     this instance is also reported.
NOTES
     Because file names are fixed, at most one yacc process can be active in a
     given directory at a given time.

									Page 2

[top]

List of man pages available for IRIX

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