From: chris@... Date: 2019-06-24T21:11:00+00:00 Subject: [ruby-core:93344] [Ruby trunk Bug#13337] Eval and Later Defined Local Variables Issue #13337 has been updated by chrisseaton (Chris Seaton). This is as specified here https://github.com/ruby/spec/blob/db74bf3313b4d49650417ba91b4e2d67cc253dc5/core/kernel/eval_spec.rb#L31-L68 ---------------------------------------- Bug #13337: Eval and Later Defined Local Variables https://bugs.ruby-lang.org/issues/13337#change-78849 * Author: faraz (Faraz Yashar) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: 2.4.0 * Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN ---------------------------------------- I've noticed the following behavior with eval: ~~~ ruby def example eval("foo") # => nil, but would expect a NameError eval("bar") # => NameError foo = 1 end ~~~ I'm assuming this behavior is expected, since "eval" executes in the context of the existing YARV instructions and local table, but I'm not certain since I haven't seen this behavior documented anywhere. ---Files-------------------------------- doc-eval-local-var.patch (1.63 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: