diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2015-05-08 11:49:49 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2015-05-08 11:49:49 +0900 |
| commit | d979172b3e753ae9c094dff9a877b14c63619246 (patch) | |
| tree | 61d0988c888f12a32e74b77dc1a57509ff4edbb5 | |
| parent | 4bafd628449114eef58216fb16abae6d32faca3b (diff) | |
| parent | 2aa59393bafa24421ff6c5b90de59af8a25f927c (diff) | |
| download | mruby-d979172b3e753ae9c094dff9a877b14c63619246.tar.gz mruby-d979172b3e753ae9c094dff9a877b14c63619246.zip | |
Merge pull request #2784 from cremno/fix-splat-without-assignment
fix splat without assignment
| -rw-r--r-- | src/codegen.c | 3 | ||||
| -rw-r--r-- | test/t/syntax.rb | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/codegen.c b/src/codegen.c index c8f964f56..16e1235de 100644 --- a/src/codegen.c +++ b/src/codegen.c @@ -964,6 +964,9 @@ gen_assignment(codegen_scope *s, node *tree, int sp, int val) genop_peep(s, MKOP_AB(OP_MOVE, cursp(), sp), val); } break; + /* splat without assignment */ + case NODE_NIL: + break; default: #ifdef ENABLE_STDIO diff --git a/test/t/syntax.rb b/test/t/syntax.rb index d21748de1..5ce4e0a63 100644 --- a/test/t/syntax.rb +++ b/test/t/syntax.rb @@ -213,6 +213,12 @@ assert('Splat and multiple assignment in for') do assert_equal 7, f end +assert('Splat without assignment') do + * = [0] + a, * = [1, 2] + assert_equal 1, a +end + assert('Return values of case statements') do a = [] << case 1 when 3 then 2 |
