Environment Information
Provide at least:
- jruby 10.0.4.0-SNAPSHOT (3.4.5) 2026-02-22 ffffffffff OpenJDK 64-Bit Server VM 21.0.10+7 on 21.0.10+7 +indy +jit [x86_64-linux] (master)
- Linux meow4 6.18.4-1-MANJARO #1 SMP PREEMPT_DYNAMIC Thu, 08 Jan 2026 12:46:08 +0000 x86_64 GNU/Linux
Issue 1: transplanted and/or aliased methods display wrong #original_name
Expected Behavior
Given this file:
class A < BasicObject
define_method(:method, ::Kernel.instance_method(:method))
define_method(:is_a?, ::Kernel.instance_method(:is_a?))
alias is_stuff? is_a?
define_method(:kind_of?, ::Kernel.instance_method(:kind_of?))
alias kind_of_stuff? kind_of?
define_method(:my_inspect, ::Kernel.instance_method(:inspect))
end
puts A.instance_method(:is_a?).original_name
puts A.new.method(:is_a?).original_name
puts A.instance_method(:is_stuff?).original_name
puts A.new.method(:is_stuff?).original_name
puts A.instance_method(:kind_of?).original_name
puts A.new.method(:kind_of?).original_name
puts A.instance_method(:kind_of_stuff?).original_name
puts A.new.method(:kind_of_stuff?).original_name
puts A.instance_method(:my_inspect).original_name
puts A.new.method(:my_inspect).original_name
Running it, I expect to see:
is_a?
is_a?
is_a?
is_a?
kind_of?
kind_of?
kind_of?
kind_of?
inspect
inspect
(on MRI ruby 3.3.9 (2025-07-24 revision f5c772fc7c) [x86_64-linux])
Actual Behavior
kind_of?
is_a?
kind_of?
kind_of?
kind_of?
kind_of?
kind_of?
kind_of?
inspect
my_inspect
- is_a? appears only for unaliased Method, but it shouldn't be considered an alias of kind_of?
- my_inspect appears only for Method, but it shouldn't
Issue 2: attr_accessor and co are named by ivar
Expected Behavior
Given this file:
class A
attr_accessor :var
alias var_r var
alias var_w var=
end
puts A.instance_method(:var).original_name
puts A.new.method(:var).original_name
puts A.instance_method(:var=).original_name
puts A.new.method(:var=).original_name
puts A.instance_method(:var_r).original_name
puts A.new.method(:var_r).original_name
puts A.instance_method(:var_w).original_name
puts A.new.method(:var_w).original_name
I expect to see:
var
var
var=
var=
var
var
var=
var=
Actual Behavior
@var
var
@var=
var=
@var
@var
@var=
@var=
- Only unaliased Methods have correct names
- This also happens with attr_reader and attr_writer
Reactions are currently unavailable
Environment Information
Provide at least:
Issue 1: transplanted and/or aliased methods display wrong #original_name
Expected Behavior
Given this file:
Running it, I expect to see:
(on MRI ruby 3.3.9 (2025-07-24 revision f5c772fc7c) [x86_64-linux])
Actual Behavior
Issue 2: attr_accessor and co are named by ivar
Expected Behavior
Given this file:
I expect to see:
Actual Behavior