diff options
author | 2013-12-26 12:24:00 -0800 | |
---|---|---|
committer | 2013-12-26 12:24:00 -0800 | |
commit | 924b8cbe24023985d7bafcec7b79303e2e7cc2e4 (patch) | |
tree | a347fbe0c992ffb403d1ecbc20390e4db18a22a4 /parser.cpp | |
parent | 5b1a53265233f837e272aa0936267e04c8848856 (diff) |
New ideas about how to use new parser for execution. Beginnings of
implementation.
Diffstat (limited to 'parser.cpp')
-rw-r--r-- | parser.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -427,6 +427,12 @@ void parser_t::pop_block() delete old; } +void parser_t::pop_block(const block_t *expected) +{ + assert(expected == this->current_block()); + this->pop_block(); +} + const wchar_t *parser_t::get_block_desc(int block) const { for (size_t i=0; block_lookup[i].desc; i++) @@ -2908,7 +2914,9 @@ void parser_t::eval_job(tokenizer_t *tok) { int was_builtin = 0; if (j->first_process->type==INTERNAL_BUILTIN && !j->first_process->next) + { was_builtin = 1; + } scoped_push<int> tokenizer_pos_push(¤t_tokenizer_pos, job_begin_pos); exec_job(*this, j); |