diff options
-rw-r--r-- | parse.y | 1 | ||||
-rw-r--r-- | test/ruby/test_syntax.rb | 1 |
2 files changed, 2 insertions, 0 deletions
@@ -4799,6 +4799,7 @@ f_label : tLABEL ID id = get_id($1); arg_var(p, formal_argument(p, id)); p->cur_arg = id; + p->max_numparam = -1; $$ = $1; } ; diff --git a/test/ruby/test_syntax.rb b/test/ruby/test_syntax.rb index 6e397a9c00..488962b003 100644 --- a/test/ruby/test_syntax.rb +++ b/test/ruby/test_syntax.rb @@ -1301,6 +1301,7 @@ eom assert_syntax_error('->(){@1}', /ordinary parameter is defined/) assert_syntax_error('->(x){@1}', /ordinary parameter is defined/) assert_syntax_error('->x{@1}', /ordinary parameter is defined/) + assert_syntax_error('->x:@2{}', /ordinary parameter is defined/) assert_syntax_error('proc {@1 = nil}', /Can't assign to numbered parameter @1/) assert_syntax_error('proc {@01}', /leading zero/) assert_syntax_error('proc {@1_}', /unexpected/) |