[#67346] Future of test suites for Ruby — Charles Oliver Nutter <headius@...>

I'll try to be brief so we can discuss all this. tl;dr: RubySpec is

19 messages 2015/01/05

[ruby-core:67762] [ruby-trunk - Feature #10773] nested module should work in instance_eval

From: rorocodeath@...
Date: 2015-01-23 10:26:53 UTC
List: ruby-core #67762
Issue #10773 has been updated by roro co.


my ruby version:

~~~
roroco@roroco ~ $ ruby -v
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]
~~~

my sys info:

~~~
roroco@roroco ~ $ lsb_release -a
No LSB modules are available.
Distributor ID:	LinuxMint
Description:	Linux Mint 17 Qiana
Release:	17
Codename:	qiana
~~~


----------------------------------------
Feature #10773: nested module should work in instance_eval
https://bugs.ruby-lang.org/issues/10773#change-51187

* Author: roro co
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
see my code:

~~~
module M
  module M2

  end
end

class C
  include M

  def ivk_m2(*args, &blk)
    M2
  end
end

C.new.ivk_m2 # work
C.new.instance_eval do
  meth_in_m # work
  M2 # not work
end

~~~

and output

~~~
Uncaught exception: uninitialized constant M2
	/home/roroco/Dropbox/rbs/ro_btc/exe.rb:22:in `block in <top (required)>'
	/home/roroco/Dropbox/rbs/ro_btc/exe.rb:20:in `instance_eval'
	/home/roroco/Dropbox/rbs/ro_btc/exe.rb:20:in `<top (required)>'
~~~

in above code,  i think`C.new.instance { M2 }` should invoke M::M2 in syntax since it's in "instance block" or "main"




-- 
https://bugs.ruby-lang.org/

In This Thread

Prev Next