From: Tomoyuki@..., Chikanaga@... Date: 2014-01-12T06:57:08+00:00 Subject: [ruby-core:59703] [ruby-trunk - Bug #7842] An alias of a "prepend"ed method skips the original method when calling super ������������ #7842 ��� Tomoyuki Chikanaga ������������������������������������ Backport ��� 1.9.3: DONTNEED, 2.0.0: REQUIRED ������ 1.9.3: DONTNEED, 2.0.0: DONE ��������� r44175 was already backported to ruby_2_0_0 at r44345. ---------------------------------------- Bug #7842: An alias of a "prepend"ed method skips the original method when calling super https://bugs.ruby-lang.org/issues/7842#change-44220 * ���������: Yusuke Endoh * ���������������: Closed * ���������: Normal * ���������: Nobuyoshi Nakada * ������������: core * ���������������������: 2.1.0 * ruby -v: ruby 2.0.0dev (2013-02-13 trunk 39225) [x86_64-linux] * Backport: 1.9.3: DONTNEED, 2.0.0: DONE ---------------------------------------- Hello, module P def m; puts "P"; super; end end class A def m; puts "A"; end end class B < A def m; puts "B"; end prepend P alias m2 m end B.new.m2 #=> expected: P, B, A #=> actual: P, A Is this intentional? It looks weird to me that calling super of P#m (as m2) skips A#m. -- Yusuke Endoh -- http://bugs.ruby-lang.org/