<T extends ListBuffer<? super JCExpressionStatement>> T moreStatementExpressions(int pos,
                                                                    JCExpression first,
                                                                    T stats) {
        // This Exec is a "StatementExpression"; it subsumes no terminating token
        stats.append(toP(F.at(pos).Exec(checkExprStat(first))));
        while (token.kind == COMMA) {
            nextToken();
            pos = token.pos;
            JCExpression t = parseExpression();
            // This Exec is a "StatementExpression"; it subsumes no terminating token
            stats.append(toP(F.at(pos).Exec(checkExprStat(t))));
        }
        return stats;
    }
< T extends ListBuffer < ? super JCExpressionStatement > > T moreStatementExpressions ( int pos , JCExpression first , T stats ) { stats . append ( toP ( F . at ( pos ) . Exec ( checkExprStat ( first ) ) ) ) ; while ( token . kind == COMMA ) { nextToken ( ) ; pos = token . pos ; JCExpression t = parseExpression ( ) ; stats . append ( toP ( F . at ( pos ) . Exec ( checkExprStat ( t ) ) ) ) ; } return stats ; }
MoreStatementExpressions = { COMMA StatementExpression }