From fb9795cf7a25d675d1fd525997fd002a16f46aec Mon Sep 17 00:00:00 2001 From: Haldun Bayhantopcu Date: Thu, 5 Oct 2023 08:15:23 +0200 Subject: [ruby/prism] Fix parsing shadow args in lambda blocks https://github.com/ruby/prism/commit/53efaf252d --- test/prism/errors_test.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'test') diff --git a/test/prism/errors_test.rb b/test/prism/errors_test.rb index 399653ef3e..cb58b3cd21 100644 --- a/test/prism/errors_test.rb +++ b/test/prism/errors_test.rb @@ -1363,6 +1363,16 @@ module Prism ] end + def test_shadow_args_in_lambda + source = "->a;b{}" + assert_errors expression(source), source, [ + ["Expected a `do` keyword or a `{` to open the lambda block", 3..3], + ["Expected a newline or semicolon after the statement", 7..7], + ["Cannot parse the expression", 7..7], + ["Expected a lambda block beginning with `do` to end with `end`", 7..7], + ] + end + private def assert_errors(expected, source, errors, compare_ripper: RUBY_ENGINE == "ruby") -- cgit v1.2.3