Issue #9443 has been updated by Tomoyuki Chikanaga. I think it's intended behavior. nobu, how do you think? ---------------------------------------- Bug #9443: Pepended methods are skipped if calling alias https://bugs.ruby-lang.org/issues/9443#change-45307 * Author: Brian Cardarella * Status: Open * Priority: Normal * Assignee: * Category: * Target version: * ruby -v: 2.1.0 * Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- I am unsure if this is related to https://bugs.ruby-lang.org/issues/7842 as that issue specifically mentions the user of "super" which my example code does not use. Anyway, here is the test to recreate: require 'test/unit' module A def foo 'foo2' end end class B def foo 'foo1' end alias_method :bar, :foo end B.send(:prepend, A) class AliasTest < Test::Unit::TestCase def test_no_alias assert_equal 'foo2', B.new.foo end def test_with_alias assert_equal 'foo2', B.new.bar end end test_with_alias fails and will only call the original "foo" method. I have confirmed this on Ruby 2.0.0-p353 & 2.1.0 -- http://bugs.ruby-lang.org/