Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ yacc(1) — UTek 3.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

lex(1)



YACC(1)                 COMMAND REFERENCE                 YACC(1)



NAME
     yacc - yet another compiler-compiler

SYNOPSIS
     yacc [ -vd ] 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 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 must
     be supplied by the user; lex(1) is useful for creating
     lexical analyzers usable by yacc.

OPTIONS
     -d The file y.tab.h is generated with the define statements
        that associate the yacc-assigned token codes with the
        user-declared token names.  This allows source files
        other than y.tab.c to access the token codes.

     -v 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.

FILES
     y.output     Contains description of parsing tables and
                  conflict reports.

     y.tab.c      Output.

     y.tab.h      Defines for token names.

     yacc.tmp, yacc.acts
                  Temporary files.

     /usr/lib/yaccpar
                  Parser prototype for C programs.

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.  Similarly, if some rules are
     not reachable from the start symbol, this is also reported.

CAVEATS
     Because filenames are fixed, at most, one yacc process can
     be active in a given directory at a time.



Printed 5/12/88                                                 1





YACC(1)                 COMMAND REFERENCE                 YACC(1)



SEE ALSO
     lex(1).





















































Printed 5/12/88                                                 2





































































%%index%%
na:240,88;
sy:328,200;
de:528,1064;
op:1592,709;
fi:2301,450;
di:2751,438;
ca:3189,229;
se:3730,150;
%%index%%000000000134

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026