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>