public SYMBOL NextSym()
{
// like lexer.Next but allows a one-token pushback for reduce
SYMBOL ret = m_ungot;
if (ret != null)
{
m_ungot = null;
return ret;
}
ret = (SYMBOL)m_lexer.Next();
if (ret==null)
ret = m_symbols.EOFSymbol;
return ret;
}