| 2564 | } |
| 2565 | |
| 2566 | static void compile_append_chain( PARSE * parse, compiler * c ) |
| 2567 | { |
| 2568 | assert( parse->type == PARSE_APPEND ); |
| 2569 | if ( parse->left->type == PARSE_NULL ) |
| 2570 | compile_parse( parse->right, c, RESULT_STACK ); |
| 2571 | else |
| 2572 | { |
| 2573 | if ( parse->left->type == PARSE_APPEND ) |
| 2574 | compile_append_chain( parse->left, c ); |
| 2575 | else |
| 2576 | compile_parse( parse->left, c, RESULT_STACK ); |
| 2577 | compile_parse( parse->right, c, RESULT_STACK ); |
| 2578 | compile_emit( c, INSTR_PUSH_APPEND, 0 ); |
| 2579 | } |
| 2580 | } |
| 2581 | |
| 2582 | static void compile_emit_debug(compiler * c, int32_t line) |
| 2583 | { |
no test coverage detected