public override void Pass(ref ParseStackEntry top) { Parser yyps = top.yyps; SYMBOL ns = this.m_action.Action(yyps); yyps.m_ungot = top.m_value; if (yyps.m_debug) { Console.WriteLine("about to pop {0} count is {1}", (object)this.m_depth, (object)yyps.m_stack.Count); } yyps.Pop(ref top, this.m_depth, ns); if (ns.pos == 0) { ns.pos = top.m_value.pos; } top.m_value = ns; }