diff options
| -rw-r--r-- | src/codegen.c | 1 | ||||
| -rw-r--r-- | test/t/syntax.rb | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/codegen.c b/src/codegen.c index 5681ce03a..34ccd616f 100644 --- a/src/codegen.c +++ b/src/codegen.c @@ -1551,7 +1551,6 @@ codegen(codegen_scope *s, node *tree, int val) // variable rhs codegen(s, t, VAL); gen_vmassignment(s, tree->car, rhs, val); - if (!val) pop(); } } break; diff --git a/test/t/syntax.rb b/test/t/syntax.rb index 332cfcca8..b975d0103 100644 --- a/test/t/syntax.rb +++ b/test/t/syntax.rb @@ -65,3 +65,12 @@ assert('Abbreviated variable assignment as returns') do end assert_equal Syntax4AbbrVarAsgnAsReturns::A.new.b, 1 end + +assert('Splat and mass assignment') do + *a = *[1,2,3] + b, *c = *[7,8,9] + + assert_equal [1,2,3], a + assert_equal 7, b + assert_equal [8,9], c +end |
