Test.java:
public @interface Test { }
T.scala
trait T { @Test def foo = 0 }
gives
public abstract interface T {
...
public static synthetic foo$(LT;)I
// parameter final synthetic $this
@LTest;()
...
public default foo()I
@LTest;()
...
}
Imagine @Test being JUnit's annotation. It should probably not be on the forwarder method. We should add a way to control this behavior.