From 8f020f28c6b5b9c64cbd66db8369f89809b20d0a Mon Sep 17 00:00:00 2001 From: Yukihiro Matsumoto Date: Mon, 11 Jun 2012 14:50:51 +0900 Subject: parser_dump: no print "local variables" if no local variables --- src/parse.y | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'src/parse.y') diff --git a/src/parse.y b/src/parse.y index 495954538..3f542a3b3 100644 --- a/src/parse.y +++ b/src/parse.y @@ -5050,15 +5050,19 @@ parser_dump(mrb_state *mrb, node *tree, int offset) case NODE_SCOPE: printf("NODE_SCOPE:\n"); - dump_prefix(offset+1); - printf("local variables:\n"); { node *n2 = tree->car; - while (n2) { - dump_prefix(offset+2); - printf("%s\n", mrb_sym2name(mrb, (mrb_sym)n2->car)); - n2 = n2->cdr; + if (n2) { + dump_prefix(offset+1); + printf("local variables:\n"); + + while (n2) { + dump_prefix(offset+2); + printf("%s ", mrb_sym2name(mrb, (mrb_sym)n2->car)); + n2 = n2->cdr; + } + printf("\n"); } } tree = tree->cdr; -- cgit v1.2.3