[前][次][番号順一覧][スレッド一覧]

ruby-changes:60272

From: Nobuyoshi <ko1@a...>
Date: Tue, 3 Mar 2020 16:23:23 +0900 (JST)
Subject: [ruby-changes:60272] c8d0bf0156 (master): Preserve `kwarg` flag and fix up f5c904c2a9

https://git.ruby-lang.org/ruby.git/commit/?id=c8d0bf0156

From c8d0bf0156878df03a71fffc97c44abf7333d5d7 Mon Sep 17 00:00:00 2001
From: Nobuyoshi Nakada <nobu@r...>
Date: Tue, 3 Mar 2020 15:48:53 +0900
Subject: Preserve `kwarg` flag and fix up f5c904c2a9


diff --git a/parse.y b/parse.y
index 6b1686e..363aea3 100644
--- a/parse.y
+++ b/parse.y
@@ -3964,11 +3964,13 @@ p_expr_basic	: p_value https://github.com/ruby/ruby/blob/trunk/parse.y#L3964
 		| tLBRACE
 		    {
 			$<tbl>$ = push_pktbl(p);
+			$<flags>1 = p->in;
 			p->in.kwarg = 0;
 		    }
 		  p_kwargs rbrace
 		    {
 			pop_pktbl(p, $<tbl>2);
+			p->in.kwarg = $<flags>1.kwarg;
 			$$ = new_hash_pattern(p, Qnone, $3, &@$);
 		    }
 		| tLBRACE rbrace
diff --git a/test/ruby/test_pattern_matching.rb b/test/ruby/test_pattern_matching.rb
index 3eea523..3c4314b 100644
--- a/test/ruby/test_pattern_matching.rb
+++ b/test/ruby/test_pattern_matching.rb
@@ -1060,6 +1060,8 @@ END https://github.com/ruby/ruby/blob/trunk/test/ruby/test_pattern_matching.rb#L1060
       in {a:
             2}
         false
+      in a: {b:}, c:
+        p c
       in {a:
       }
         _a = a
-- 
cgit v0.10.2


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]