-
Notifications
You must be signed in to change notification settings - Fork 21
Build manager incorrectly reports errors against inherited Java inner classes when using -make:... #3347
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Imported From: https://issues.scala-lang.org/browse/SI-3347?orig=1 |
@harrah said: $$ scala-2.8.0.RC1/bin/scalac -make:changed *.java
$$ scala-2.8.0.RC1/bin/scalac -make:changed *.java
Recompiling 2 files
$$ scala-2.8.0.RC1/bin/scalac -make:changed *.java
Recompiling 2 files
$$ It might be a problem that the Java files are always recompiled, but that is a separate issue. |
rjm said: |
rjm said: public class Base {
public static class Inner {}
} |
@hubertp said: |
rjm said: |
@hubertp said: scalac src/B.java src/F.java but doesn't work for dependency management because it parses the symbols and their types (and it doesn't know the type of Inner but knows of B.Inner). Because of #1409, even if you have just src/B.java and some Scala class that uses the nested static class then you will get type error from the usual compiler (that doesn't happen with full names but I realize that's a workaround far from perfect). |
@hubertp said: |
I suspect this is related to #3133 which showed similar symptoms. Say you have a pair of Java classes:
If you run scalac on them with any
-make
recompilation strategy other thanall
, it complains:This happens if a method in the derived class takes or returns an instance of the inner class, but not if it merely has a field of the inner type.
With
-make:all
or no-make
option at all, scalac is happy.The text was updated successfully, but these errors were encountered: