From 0eb1429d023cabbdee67926eec1833b90a3c4283 Mon Sep 17 00:00:00 2001 From: hadashiA Date: Tue, 16 Jun 2026 10:54:52 +0900 Subject: [PATCH] Use mruby-compiler2 rest args patched and updated tests --- src/ChibiRuby.Compiler/mruby-compiler2 | 2 +- tests/ChibiRuby.Tests/ruby/test/syntax.rb | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/ChibiRuby.Compiler/mruby-compiler2 b/src/ChibiRuby.Compiler/mruby-compiler2 index 6c015b88..d3c871d0 160000 --- a/src/ChibiRuby.Compiler/mruby-compiler2 +++ b/src/ChibiRuby.Compiler/mruby-compiler2 @@ -1 +1 @@ -Subproject commit 6c015b88dc9537133d084e7ab40c645592f4196c +Subproject commit d3c871d04fda0d67fb158d1a719b5b03a448edea diff --git a/tests/ChibiRuby.Tests/ruby/test/syntax.rb b/tests/ChibiRuby.Tests/ruby/test/syntax.rb index 1b7d6477..8a558245 100644 --- a/tests/ChibiRuby.Tests/ruby/test/syntax.rb +++ b/tests/ChibiRuby.Tests/ruby/test/syntax.rb @@ -351,6 +351,23 @@ def b assert_equal 1, b assert_equal [2, 3], c + + source = [1, 2, 3, 4] + head, *rest, tail = source + source[1] = 20 + rest[0] = 30 + assert_equal 1, head + assert_equal 4, tail + assert_equal [1, 20, 3, 4], source + assert_equal [30, 3], rest + + class MultipleAssignmentArraySubclass < Array + end + subclass_source = MultipleAssignmentArraySubclass[1, 2, 3] + first, *subclass_rest = subclass_source + assert_equal 1, first + assert_equal [2, 3], subclass_rest + assert_equal Array, subclass_rest.class end assert('Splat and multiple assignment from variables') do