parse.c
static void ParseDo(ParseContext *c)
{
    ParseTreeNode *node = NewParseTreeNode(c, NodeTypeLoopStatement);
    node->u.loopStatement.test = NULL;
    AddNodeToList(c, &c->bptr->pNextStatement, node);
    PushBlock(c, BLOCK_DO, node);
    c->bptr->pNextStatement = &node->u.loopStatement.bodyStatements;
    FRequire(c, T_EOL);
}
/* ParseDo - parse the 'DO' statement */
parse the 'DO' statement
parse the ' DO ' statement
static void ParseDo(ParseContext *c)
{
    ParseTreeNode *node = NewParseTreeNode(c, NodeTypeLoopStatement);
    node->u.loopStatement.test = NULL;
    AddNodeToList(c, &c->bptr->pNextStatement, node);
    PushBlock(c, BLOCK_DO, node);
    c->bptr->pNextStatement = &node->u.loopStatement.bodyStatements;
    FRequire(c, T_EOL);
}
static void ParseDo ( ParseContext * c ) { ParseTreeNode * node = NewParseTreeNode ( c , NodeTypeLoopStatement ) ; node -> u . loopStatement . test = NULL ; AddNodeToList ( c , & c -> bptr -> pNextStatement , node ) ; PushBlock ( c , BLOCK_DO , node ) ; c -> bptr -> pNextStatement = & node -> u . loopStatement . bodyStatements ; FRequire ( c , T_EOL ) ; }
ParseDo - parse the 'DO' statement
ParseDo - parse the ' DO ' statement