public int VisitMultipleActualParameterSequence(MultipleActualParameterSequence ast,
                                                        Frame frame)
        {
            var argsSize1 = ast.Actual.Visit(this, frame);
            var frame1    = frame.Expand(argsSize1);
            var argsSize2 = ast.Actuals.Visit(this, frame1);

            return(argsSize1 + argsSize2);
        }
        public Void VisitMultipleActualParameterSequence(MultipleActualParameterSequence ast,
                                                         FormalParameterSequence arg)
        {
            var formals = arg as MultipleFormalParameterSequence;

            if (formals != null)
            {
                ast.Actual.Visit(this, formals.Formal);
                ast.Actuals.Visit(this, formals.Formals);
            }
            else
            {
                ReportError("too many actual parameters", ast);
            }
            return(null);
        }