In CRuby implementation terms we'd get the original method module with something like: ```c const rb_callable_method_entry_t *me = cme; // (1) unwrap an explicit alias entry, if present while (me->def->type == VM_METHOD_TYPE_ALIAS) {...Eregon (Benoit Daloze)
```ruby class Parent def original puts caller_locations(0), nil end end class Child < Parent alias_method :alias, :original end Child.new.alias module Original def original puts caller_locations(0) en...Eregon (Benoit Daloze)
TruffleRuby also behaves like CRuby here. My understanding is method visibility is some state that only exists in methods and not in blocks (same as `$~`, etc). There should already be some ruby/spec for that.Eregon (Benoit Daloze)
* ASAN noticed this issue in https://github.com/ruby/ruby-dev-builder/actions/runs/29044853326/job/86210927457: ==29649==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7f0d9b7c7b20 at pc 0x7f0d9de13c5f bp 0x7ffdcae6a710 sp...Eregon (Benoit Daloze)