From: "nobu (Nobuyoshi Nakada)" Date: 2013-12-18T12:49:46+09:00 Subject: [ruby-core:59172] [ruby-trunk - Bug #7842] An alias of a "prepend"ed method skips the original method when calling super Issue #7842 has been updated by nobu (Nobuyoshi Nakada). Backport set to 1.9.3: DONTNEED, 2.0.0: REQUIRED ---------------------------------------- Bug #7842: An alias of a "prepend"ed method skips the original method when calling super https://bugs.ruby-lang.org/issues/7842#change-43734 Author: mame (Yusuke Endoh) Status: Closed Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: core Target version: current: 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: REQUIRED 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/