Hi:

I am developing a grammar used in Racc.
Today, I added a single statement and it
has generated a shift reduce conflict.

Are there any yacc experts that can provide
some insight on how to remove this problem,
whether it be through re-writing the rule or
adding precedence or nonassoc definitions.

start    : METH_DEFS process '{' '}' NEWLINE
         | METH_DEFS process '{' NEWLINE 
            PARAMS 
            CONSTANTS 
            CONSTANTS_TABLE
          '}'
         ;

METH_DEFS : OPT_NEWLINE
          | METH_DEF           
          | METH_DEFS METH_DEF
          ;


The grammar has no conflicts with METH_DEFS removed:

start    : process '{' '}' NEWLINE
         | process '{' NEWLINE 
            PARAMS 
            CONSTANTS 
            CONSTANTS_TABLE
          '}'
         ;


-- 
Jim Freeze
----------