YACC(I)                      6/6/73                       YACC(I)







NAME

     yacc - yet another compiler-compiler



SYNOPSIS

     yacc [ -v ] [ grammar ]



DESCRIPTION

     Yacc converts a context-free grammar into a  set  of  tables

     for  a  simple  automaton  which  executes  an LR(1) parsing

     algorithm.   The  grammar  may   be   ambiguous;   specified

     precedence rules are used to break ambiguities.



     The output is y.tab.c, which  must  be  compiled  by  the  C

     compiler   and  loaded  with  any  other  routines  required

     (perhaps a lexical analyzer) and the Yacc library:



             cc y.tab.c other.o -ly



     If the -v flag is given,  the  file  y.output  is  prepared,

     which  contains  a  description  of the parsing tables and a

     report on conflicts generated by ambiguities in the grammar.



SEE ALSO

     ``LR Parsing'', by A. V. Aho and S.  C.  Johnson,  Computing

     Surveys,   June,   1974.   ``The  YACC  Compiler-compiler'',

     internal memorandum.



AUTHOR

     S. C. Johnson



FILES

     y.output

     y.tab.c

     /lib/liby.a             runtime library for compiler



DIAGNOSTICS

     The number of reduce-reduce and  shift-reduce  conflicts  is

     reported  on  the standard output; a more detailed report is

     found in the y.output file.



BUGS