stmt_t parse_stmt_while(tokenizer_t t) { char *filename = cur_tok(t).filename; int line_num = cur_tok(t).line_num; eat_it(t, TOK_WHILE); eat_it(t, TOK_LPAREN); expr_t e = parse_expr(t); eat_it(t, TOK_RPAREN); stmt_t body = parse_stmt(t); return mk_stmt_while(filename, line_num, e, body); }
stmt_t parse_stmt_while(tokenizer_t t) { /** while(1) */ eat_it(t, TOK_WHILE); eat_it(t, TOK_LPAREN); expr_t e = parse_expr(t); eat_it(t, TOK_RPAREN); /** { ; ; ; } */ stmt_t body = parse_stmt(t); return mk_stmt_while(t->filename, t->line, e, body); }