Project

General

Profile

Actions

Bug #2204

closed

Call to a removed method doesn't raise an exception

Added by tmat (Tomas Matousek) over 14 years ago. Updated almost 13 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 1.8.6 (2009-03-31 patchlevel 368) [i386-mingw32]
[ruby-core:26076]

Description

=begin
obj = Object.new

s = class << obj
alias_method :rt, :respond_to?
self
end

p obj.methods(false) # [:rt]
p obj.rt(:bar) # returns false as expected
s.send(:remove_method, :rt) # removes :rt method
p obj.methods(false) # []
obj.rt(:foo) # this should raise an exception but it doesn’t

D:\temp>ruby19 -v a.rb
ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-mswin32]
[:rt]
false
[]

D:\temp>ruby -v a.rb
ruby 1.8.6 (2009-03-31 patchlevel 368) [i386-mingw32]
["rt"]
false
[]
=end


Related issues 3 (0 open3 closed)

Has duplicate Backport186 - Backport #2202: Call to a removed method doesn't raise an exceptionClosedwyhaines (Kirk Haines)10/14/2009Actions
Has duplicate Ruby 1.8 - Bug #2205: Call to a removed method doesn't raise an exceptionClosed10/14/2009Actions
Is duplicate of Ruby 1.8 - Bug #2203: Call to a removed method doesn't raise an exceptionClosed10/14/2009Actions
Actions #1

Updated by nobu (Nobuyoshi Nakada) over 14 years ago

  • Status changed from Open to Closed

=begin
This issue was solved with changeset r25359.
Tomas, thank you for your reporting of the issue.
You have greatfully contributed toward Ruby.
May Ruby be with you.

=end

Actions

Also available in: Atom PDF

Like0
Like0