From 2734867c16fdb8a786219ceb9c157be893da8c05 Mon Sep 17 00:00:00 2001 From: yui-knk Date: Sun, 26 Nov 2017 23:52:47 +0000 Subject: parse.y: Fix the last location of NODE_KW_ARG * parse.y (kwd_append): Update the last location of NODE_KW_ARG when NODE is appended to the last. e.g. The locations of the first NODE_KW_ARG is fixed: ``` def a(b: 1, c: 2); end ``` * Before ``` NODE_KW_ARG (line: 1, first_lineno: 1, first_column: 6, last_lineno: 1, last_column: 10) ``` * After ``` NODE_KW_ARG (line: 1, first_lineno: 1, first_column: 6, last_lineno: 1, last_column: 16) ``` git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- parse.y | 2 ++ 1 file changed, 2 insertions(+) (limited to 'parse.y') diff --git a/parse.y b/parse.y index 18a0f36f99..a31fe6020d 100644 --- a/parse.y +++ b/parse.y @@ -9359,8 +9359,10 @@ kwd_append(NODE *kwlist, NODE *kw) { if (kwlist) { NODE *kws = kwlist; + kws->nd_loc.last_loc = kw->nd_loc.last_loc; while (kws->nd_next) { kws = kws->nd_next; + kws->nd_loc.last_loc = kw->nd_loc.last_loc; } kws->nd_next = kw; } -- cgit v1.2.3