[#25936] [Bug:1.9] [rubygems] $LOAD_PATH includes bin directory — Nobuyoshi Nakada <nobu@...>

Hi,

10 messages 2009/10/05

[#25943] Disabling tainting — Tony Arcieri <tony@...>

Would it make sense to have a flag passed to the interpreter on startup that

16 messages 2009/10/05

[#26028] [Bug #2189] Math.atanh(1) & Math.atanh(-1) should not raise an error — Marc-Andre Lafortune <redmine@...>

Bug #2189: Math.atanh(1) & Math.atanh(-1) should not raise an error

14 messages 2009/10/10

[#26222] [Bug #2250] IO::for_fd() objects' finalization dangerously closes underlying fds — Mike Pomraning <redmine@...>

Bug #2250: IO::for_fd() objects' finalization dangerously closes underlying fds

11 messages 2009/10/22

[#26244] [Bug #2258] Kernel#require inside rb_require() inside rb_protect() inside SysV context fails — Suraj Kurapati <redmine@...>

Bug #2258: Kernel#require inside rb_require() inside rb_protect() inside SysV context fails

24 messages 2009/10/22

[#26361] [Feature #2294] [PATCH] ruby_bind_stack() to embed Ruby in coroutine — Suraj Kurapati <redmine@...>

Feature #2294: [PATCH] ruby_bind_stack() to embed Ruby in coroutine

42 messages 2009/10/27

[#26371] [Bug #2295] segmentation faults — tomer doron <redmine@...>

Bug #2295: segmentation faults

16 messages 2009/10/27

[ruby-core:26069] [Bug #2199] Object#method should call respond_to_missing(sym, true)

From: Marc-Andre Lafortune <redmine@...>
Date: 2009-10-13 05:17:10 UTC
List: ruby-core #26069
Bug #2199: Object#method should call respond_to_missing(sym, true)
http://redmine.ruby-lang.org/issues/show/2199

Author: Marc-Andre Lafortune
Status: Open, Priority: Normal
Category: core, Target version: 1.9.2
ruby -v: ruby 1.9.2dev (2009-10-13 trunk 25317) [x86_64-darwin10.0.0]

Is there any reason I'm missing?

  class A
    def respond_to_missing?(method, private = false)
      method == :is_private && private
    end
  
    def is_private2
    end
    private :is_private2
  end
  
  A.new.method(:is_private2) # ==> #<Method: A#is_private2>...
  A.new.method(:is_private) # ==> NameError: undefined method `is_private' for class `A'


If not:

diff --git a/proc.c b/proc.c
index 5ed3c01..b7c632c 100644
--- a/proc.c
+++ b/proc.c
@@ -902,7 +902,7 @@ mnew(VALUE klass, VALUE obj, ID id, VALUE mclass, int scope)
        VALUE sym = ID2SYM(id);
 
        if (obj != Qundef && !rb_method_basic_definition_p(klass, rmiss)) {
-           if (RTEST(rb_funcall(obj, rmiss, 1, sym))) {
+           if (RTEST(rb_funcall(obj, rmiss, 2, sym, Qtrue))) {
                def = ALLOC(rb_method_definition_t);
                def->type = VM_METHOD_TYPE_MISSING;
                def->original_id = id;


----------------------------------------
http://redmine.ruby-lang.org

In This Thread

Prev Next