[#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:67526] [ruby-trunk - Bug #10731] [Closed] Segmentation fault when create alias to refined method

From: nobu@...
Date: 2015-01-12 07:46:03 UTC
List: ruby-core #67526
Issue #10731 has been updated by Nobuyoshi Nakada.

Status changed from Open to Closed
% Done changed from 0 to 100

Applied in changeset r49221.

----------
vm_method.c: NameError at refined method alias

* vm_method.c (rb_alias): raise a NameError when creating alias to
  a refined method if the original method of the refined method is
  not defined.  [ruby-core:67523] [Bug #10731]

----------------------------------------
Bug #10731: Segmentation fault when create alias to refined method
https://bugs.ruby-lang.org/issues/10731#change-50940

* Author: Seiei Higa
* Status: Closed
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* ruby -v: ruby 2.3.0dev (2015-01-12 trunk 49218) [x86_64-darwin14]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
following code cause segmentation fault, both `foo` and `bar` is not defined in refined class, in trunk and 2.2.0, 2.1.5, 2.0.0

``` ruby
class C
end

module RefinementBug
  refine C do
    def foo
    end

    def bar
    end
  end
end

class C
  alias foo bar
end
```

it should be raise a NameError if the original method of the refined method is not exist, like undef (#8966).

---Files--------------------------------
ruby_2015-01-12-135103_Nil.crash (11.3 KB)
bug.rb (128 Bytes)
0001-vm_method.c-raise-a-NameError-when-create-alias-to-r.patch (1.77 KB)


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

In This Thread

Prev Next