Project

General

Profile

Actions

Bug #18023

closed

Ractor#make_shareable changes the values of closured shareable objects

Added by slowpilot (Ivan Razuvaev) 4 months ago. Updated 12 days ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
3.0.0, 3.0.1
[ruby-core:104519]

Description

Hi. I encountered strange behaviour or shareable procs when every even closured shareable variable becomes the FalseClass instance.

[usr@srvr ~]$ irb
3.0.1 :001 > v1, v2, v3, v4 = :a, :b, :c, :d
 => [:a, :b, :c, :d] 
3.0.1 :002 > p = Proc.new { p v1, v2, v3, v4 }
 => #<Proc:0x000000000248ed18 (irb):2> 
3.0.1 :003 > p.()
:a
:b
:c
:d
 => [:a, :b, :c, :d] 
3.0.1 :004 > Ractor.make_shareable(p).()
:a
false
:c
false
 => [:a, false, :c, false] 
Actions

Also available in: Atom PDF