package test;
trait test {
  type T;
  trait Manager {
    type T <: test.this.T;
    def foo(t : T) = {};
  }
  object M0 extends Manager {
    override type T = test.this.T;
    override def foo(t : T) = super.foo(t);
  }
  def t : T;
  M0.foo(t);
}
