parse.y: Fix locations of NODE_*ASGN and NODE_ERRINFO

* parse.y: Fix to only include a range of exc_var.

  e.g. The locations of the NODE_DASGN_CURR and NODE_ERRINFO are fixed:

  ```
  begin
    1
  rescue => e
    2
  end
  ```

  * Before

  ```
  NODE_DASGN_CURR (line: 3, first_lineno: 3, first_column: 0, last_lineno: 5, last_column: 3)
  NODE_ERRINFO (line: 5, first_lineno: 3, first_column: 0, last_lineno: 5, last_column: 3)
  ```

  * After

  ```
  NODE_DASGN_CURR (line: 3, first_lineno: 3, first_column: 7, last_lineno: 3, last_column: 11)
  NODE_ERRINFO (line: 5, first_lineno: 3, first_column: 7, last_lineno: 3, last_column: 11)
  ```

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
yui-knk 2017-12-04 23:59:02 +00:00
Родитель 5a8a2706d3
Коммит faf43e37ad
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -3832,7 +3832,7 @@ opt_rescue : keyword_rescue exc_list exc_var then
{
/*%%%*/
if ($3) {
$3 = node_assign($3, new_errinfo(&@$), &@$);
$3 = node_assign($3, new_errinfo(&@3), &@3);
$5 = block_append($3, $5, &@$);
}
$$ = new_resbody($2, $5, $6, &@$);