bug588.scala:3: error: double definition:
method visit:(f: (Int) => String)Boolean and
method visit:(f: (Int) => Unit)Boolean at line 2
have same type after erasure: (f: Function1)Boolean
  def visit(f: Int => String): Boolean
      ^
bug588.scala:10: error: double definition:
method f:(brac: Test.this.TypeB)Unit and
method f:(node: Test.this.TypeA)Unit at line 9
have same type after erasure: (brac: Test#TraitA)Unit
  def f(brac : TypeB) : Unit;
      ^
two errors found
