File tree 4 files changed +6
-1
lines changed
src/dotty/tools/dotc/typer 4 files changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -654,10 +654,14 @@ class Namer { typer: Typer =>
654
654
else restpe
655
655
val monotpe =
656
656
(paramSymss :\ restpe1) { (params, restpe) =>
657
+ val isJava = ddef.mods is JavaDefined
657
658
val make =
658
659
if (params.nonEmpty && (params.head is Implicit )) ImplicitMethodType
659
- else if (ddef.mods.is( JavaDefined ) ) JavaMethodType
660
+ else if (isJava ) JavaMethodType
660
661
else MethodType
662
+ if (isJava) params.foreach { symbol =>
663
+ if (symbol.info.isDirectRef(defn.ObjectClass )) symbol.info = defn.AnyType
664
+ }
661
665
make.fromSymbols(params, restpe)
662
666
}
663
667
if (typeParams.nonEmpty) PolyType .fromSymbols(typeParams, monotpe)
Original file line number Diff line number Diff line change @@ -57,6 +57,7 @@ class tests extends CompilerTest {
57
57
@ Test def pos_packageobject () = compileFile(posDir, " packageobject" )
58
58
@ Test def pos_overloaded () = compileFile(posDir, " overloaded" )
59
59
@ Test def pos_overrides () = compileFile(posDir, " overrides" )
60
+ @ Test def pos_javaOverride () = compileDir(posDir + " java-override" )
60
61
@ Test def pos_templateParents () = compileFile(posDir, " templateParents" )
61
62
@ Test def pos_structural () = compileFile(posDir, " structural" )
62
63
@ Test def pos_overloadedAccess = compileFile(posDir, " overloadedAccess" )
File renamed without changes.
File renamed without changes.
You can’t perform that action at this time.
0 commit comments