From d3a54f6fe866f2c582a68453cc03a6a925dc5b0a Mon Sep 17 00:00:00 2001 From: charliesome Date: Tue, 1 Jul 2014 18:21:22 +0000 Subject: Fix --dump=parsetree segfault on required keyword argument * node.c (dump_node): handle nd_value == (NODE *)-1 to mean this keyword argument is required git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ node.c | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index a542807515..1e05338476 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Jul 2 03:20:00 2014 Charlie Somerville + + * node.c (dump_node): handle nd_value == (NODE *)-1 to mean this + keyword argument is required + Wed Jul 2 02:57:27 2014 Nobuyoshi Nakada * vm.c (rb_vm_env_local_variables): returns array of local diff --git a/node.c b/node.c index 15d27dfa22..e251d85721 100644 --- a/node.c +++ b/node.c @@ -300,7 +300,12 @@ dump_node(VALUE buf, VALUE indent, int comment, NODE *node) asgn: F_ID(nd_vid, "variable"); LAST_NODE; - F_NODE(nd_value, "rvalue"); + if (node->nd_value == (NODE *)-1) { + F_MSG(nd_value, "rvalue", "(required keyword argument)"); + } + else { + F_NODE(nd_value, "rvalue"); + } break; case NODE_GASGN: -- cgit v1.2.3