diff options
| author | yui-knk <[email protected]> | 2014-05-31 14:00:30 +0900 |
|---|---|---|
| committer | yui-knk <[email protected]> | 2014-05-31 14:00:30 +0900 |
| commit | 536697f41e7e2844b67f2cc9dac76c14e631af81 (patch) | |
| tree | 7258bb1995db676f22788785b1446dc42546d0cb | |
| parent | 6bf1ee78c8cdc5c1b0265694c404ada0ec32cb28 (diff) | |
| download | mruby-536697f41e7e2844b67f2cc9dac76c14e631af81.tar.gz mruby-536697f41e7e2844b67f2cc9dac76c14e631af81.zip | |
Fix to not print unnecessary comma.
When `n2->car` is 0 and `n2->cdd` is not 0,
unnecessary comma was printed before first local variables.
| -rw-r--r-- | src/parse.y | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/parse.y b/src/parse.y index c6795fb65..9f185ee73 100644 --- a/src/parse.y +++ b/src/parse.y @@ -5855,6 +5855,7 @@ mrb_parser_dump(mrb_state *mrb, node *tree, int offset) printf("NODE_SCOPE:\n"); { node *n2 = tree->car; + mrb_bool first_lval = TRUE; if (n2 && (n2->car || n2->cdr)) { dump_prefix(offset+1); @@ -5862,8 +5863,9 @@ mrb_parser_dump(mrb_state *mrb, node *tree, int offset) dump_prefix(offset+2); while (n2) { if (n2->car) { - if (n2 != tree->car) printf(", "); + if (!first_lval) printf(", "); printf("%s", mrb_sym2name(mrb, sym(n2->car))); + first_lval = FALSE; } n2 = n2->cdr; } @@ -6240,6 +6242,7 @@ mrb_parser_dump(mrb_state *mrb, node *tree, int offset) tree = tree->cdr; { node *n2 = tree->car; + mrb_bool first_lval = TRUE; if (n2 && (n2->car || n2->cdr)) { dump_prefix(offset+1); @@ -6247,8 +6250,9 @@ mrb_parser_dump(mrb_state *mrb, node *tree, int offset) dump_prefix(offset+2); while (n2) { if (n2->car) { - if (n2 != tree->car) printf(", "); + if (!first_lval) printf(", "); printf("%s", mrb_sym2name(mrb, sym(n2->car))); + first_lval = FALSE; } n2 = n2->cdr; } |
