From: shyouhei@... Date: 2018-11-07T09:03:14+00:00 Subject: [ruby-core:89748] [Ruby trunk Bug#15285] lambda return behavior regression from #14639 Issue #15285 has been updated by shyouhei (Shyouhei Urabe). ea15ceddbef2cc4c459c1ad5796e43ae9fa2cbf1 is r64996, which is a backport of r63030, which fixes #14639. @nobu any idea? ---------------------------------------- Bug #15285: lambda return behavior regression from #14639 https://bugs.ruby-lang.org/issues/15285#change-74792 * Author: nmueller (Nate Mueller) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux] * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- The change in ea15ceddbef2cc4c459c1ad5796e43ae9fa2cbf1 to use rb_yield_force_blockarg changes the behavior of returns called inside a passed lambda function. In 2.5.1 and below, including before the enum.c change, the attached script would print `true`. In 2.5.3 it prints `false`. ---Files-------------------------------- test.rb (118 Bytes) -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>