§1.5.(e) Precedence among different supers

If a role inherits the same feature from several super roles (super and tsuper), an implicitly inherited version always overrides any explicitly inherited feature.
Also implicit inheritance alone may produce several candidate methods inherited by a role class. This is a result of team-nesting where each level of nesting may add one more tsuper role. In that case inner team inheritance has precedence over outer team inheritance.

In the above example (Listing 1.5) role OuterTeam.RoleAndTeamSub.InnerRole has two direct tsuper roles: OuterTeam.RoleAndTeam.InnerRole and SuperOuter.RoleAndTeamSub.InnerRole. Without the method foo defined in lines 27-30, the enclosing class OuterTeam.RoleAndTeamSub.InnerRole would inherit the method foo defined in line 16, because the inner inheritance between RoleAndTeamSub and RoleAndTeam binds stronger than the outer inheritance between OuterTeam and SuperOuter.

Example diagram team nesting