From 803d1753b7a3ad8db3b1643181a5b4c8f51da40b Mon Sep 17 00:00:00 2001 From: yui-knk Date: Thu, 7 Dec 2017 03:00:36 +0000 Subject: parse.y: Fix locations of dsym * parse.y: Fix to only include a range from tSTRING_BEG to tLABEL_END. e.g. The locations of the NODE_LIT is fixed: ``` { "a": 10 } ``` * Before ``` NODE_LIT (line: 1, code_range: (1,2)-(1,9)) ``` * After ``` NODE_LIT (line: 1, code_range: (1,2)-(1,6)) ``` git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- parse.y | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/parse.y b/parse.y index 62ceedb8c5..109c227e09 100644 --- a/parse.y +++ b/parse.y @@ -4998,7 +4998,8 @@ assoc : arg_value tASSOC arg_value | tSTRING_BEG string_contents tLABEL_END arg_value { /*%%%*/ - $$ = list_append(new_list(dsym_node($2, &@$), &@$), $4, &@$); + YYLTYPE location = {@1.first_loc, @3.last_loc}; + $$ = list_append(new_list(dsym_node($2, &location), &location), $4, &@$); /*% $$ = dispatch2(assoc_new, dispatch1(dyna_symbol, $2), $4); %*/ -- cgit v1.2.3