From 9059dfce12995451a4374330baab49177fa717be Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Mon, 2 Oct 2023 22:06:32 +0900 Subject: `yield` cannot be placed outside methods even in blocks --- test/ruby/test_ast.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_ast.rb b/test/ruby/test_ast.rb index f2c746aafa..c8617d50f0 100644 --- a/test/ruby/test_ast.rb +++ b/test/ruby/test_ast.rb @@ -312,11 +312,13 @@ class TestAst < Test::Unit::TestCase assert_invalid_parse(msg, "class C; yield; end") assert_invalid_parse(msg, "BEGIN {yield}") assert_invalid_parse(msg, "END {yield}") + assert_invalid_parse(msg, "-> {yield}") assert_invalid_parse(msg, "yield true") assert_invalid_parse(msg, "class C; yield true; end") assert_invalid_parse(msg, "BEGIN {yield true}") assert_invalid_parse(msg, "END {yield true}") + assert_invalid_parse(msg, "-> {yield true}") assert_parse("!defined?(yield)") assert_parse("class C; defined?(yield); end") -- cgit v1.2.3