On Thu, Sep 9, 2010 at 4:13 PM, erik quanstrom <quans...@quanstro.net> wrote:
> lately, i've been seeing email with gigantic headers.
> 120 header lines are not that uncommon.  unfortunately
> upas has sometimes inserts a blank line about
> (but not exactly) 4k into the file.  a bit of digging, upas/send
> was assuming that if yacc didn't stop at a blank line, one should
> be inserted. unfortunately, yacc was stopping because it ran out of stack
> space.  the hack is to increase YYMAXDEPTH.  ideally,
> each line should be parsed independently, thus making
> yacc's depth depend only on the complexity of a line.

or change the grammar not to need unlimited stack space.
it says

fields          : '\n'
                        { yydone = 1; }
                | field '\n'
                | field '\n' fields
                ;

but i think you can change it to

fields  : fieldlist '\n'
                        { yydone = 1; }
                ;

fieldlist       :
                | fieldlist field '\n'
                ;

russ

Reply via email to