private Scala members should (in many cases) be exposed as public (that's what scalac does)
The below code currently triggers several errors to be reported in the Java editor. The issue is that Scalac compiles (in many cases, not all though) private entities into public, while we do not emulate the compiler, and hence private entities are exposed to JDT with no modifications (i.e., as private ).
//scala/Top.scala
package scala
private trait Top {
protected[scala] def foo
}
private abstract class ATop extends Top {
final protected[scala] def foo {}
}
// J.java
import scala.ATop;
public class J extends ATop {
void foo2() {
super.foo();
}
}
Leave a comment
on 2011-11-15 06:58 *
By Mirco Dotta
Description changed from The below code currently tr... to The below code currently tr...
on 2012-10-10 04:18 *
By Mirco Dotta
Version changed from 2.0.0-RC1-29 to 2.0.2-final-29
Eclipse version changed from Helios to Helios - Eclipse 3.6
Assigned to changed from Mirco Dotta to -none-
Milestone changed from Helium to Lithium
on 2015-03-12 19:49 *
By Simon Schäfer
Eclipse version changed from Helios - Eclipse 3.6 to Luna - Eclipse 4.4
Version changed from 2.0.2-final-29 to 4.0.0
Status changed from New to Accepted