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.
This commit is contained in:
yui-knk
2014-05-31 14:00:30 +09:00
committed by Yukihiro "Matz" Matsumoto
parent 5b590d977f
commit b443bd081a
+6 -2
View File
@@ -5858,6 +5858,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);
@@ -5865,8 +5866,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;
}
@@ -6243,6 +6245,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);
@@ -6250,8 +6253,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;
}