parse.y: Fix a location of NODE_ARRAY in NODE_ARGSCAT

* parse.y: Fix the first location to be equal to the location
  of the first element of NODE_ARRAY.

  e.g. The locations of the NODE_ARRAY is fixed:

  ```
  m(*a, :b, :c)
  ```

  * Before

  ```
  NODE_ARRAY (line: 1, first_lineno: 1, first_column: 2, last_lineno: 1, last_column: 12)
  ```

  * After

  ```
  NODE_ARRAY (line: 1, first_lineno: 1, first_column: 6, last_lineno: 1, last_column: 12)
  ```

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
yui-knk 2017-12-04 07:16:31 +00:00
parent b7de978e45
commit 2208c6b442

View File

@ -10060,7 +10060,7 @@ arg_append_gen(struct parser_params *parser, NODE *node1, NODE *node2, const YYL
node1->nd_head = arg_append(node1->nd_head, node2, location);
return node1;
case NODE_ARGSPUSH:
node1->nd_body = list_append(new_list(node1->nd_body, location), node2, location);
node1->nd_body = list_append(new_list(node1->nd_body, &node1->nd_body->nd_loc), node2, location);
nd_set_type(node1, NODE_ARGSCAT);
return node1;
}