Project

General

Profile

Actions

Bug #21522

open

Accessing outer locals via eval in a Ractor returns false

Added by tenderlovemaking (Aaron Patterson) 3 days ago.

Status:
Open
Assignee:
Target version:
-
ruby -v:
ruby 3.5.0dev (2025-07-28T22:17:45Z master f1acf47ca2) +PRISM [arm64-darwin24]
[ruby-core:122883]

Description

Normally, if you try to access a local that's been defined outside the scope of the Ractor block, it'll raise an ArgumentError. However, if you try to access the local via eval it will return the value false.

foo = Object.new

begin
  Ractor.new {
    p foo
  }.value
rescue ArgumentError
end

Ractor.new {
  p eval("foo") # => false
}.value

I'm not sure how we fix this, since my guess is that we zero the environment when copying, but I wanted to file the issue so we can track it.

No data to display

Actions

Also available in: Atom PDF

Like0