| [#193] | project: compiler | priority: medium | category: bug | |
|---|---|---|---|---|
| submitter | assigned to | status | date submitted | |
| Philippe | Michel | fixed | 2003-10-10 13:58:46.0 | |
| subject | Problem with == and != in GenJVM | |||
| code |
trait Test {
def fun1(x: Int, y: Int): Unit = {
(x: Any) == y;
(x ) == y;
(x: Any) != y;
(x ) != y;
()
}
def fun2(x: Object, y: Int): Unit = {
(x: Any) == y;
(x ) == y;
(x: Any) != y;
(x ) != y;
()
}
def fun3(x: Int, y: Object): Unit = {
(x: Any) == y;
(x ) == y;
(x: Any) != y;
(x ) != y;
()
}
def fun4(x: Object, y: Object): Unit = {
(x: Any) == y;
(x ) == y;
(x: Any) != y;
(x ) != y;
()
}
}
|
|||
| what happened | Exception in thread "main" java.lang.AssertionError: int -> scala.Int at scalac.backend.jvm.GenJVM.genWidenConversion(GenJVM.java:927) at scalac.backend.jvm.GenJVM.genLoad(GenJVM.java:559) at scalac.backend.jvm.GenJVM.genCompPrim(GenJVM.java:827) at scalac.backend.jvm.GenJVM.genCond(GenJVM.java:673) at scalac.backend.jvm.GenJVM.genLoad(GenJVM.java:305) at scalac.backend.jvm.GenJVM.gen(GenJVM.java:191) at scalac.backend.jvm.GenJVM.genLoad(GenJVM.java:224) at scalac.backend.jvm.GenJVM.gen(GenJVM.java:165) at scalac.backend.jvm.GenJVM.gen(GenJVM.java:199) at scalac.backend.jvm.GenJVM.gen(GenJVM.java:143) at scalac.backend.jvm.GenJVM.gen(GenJVM.java:138) at scalac.backend.jvm.GenJVM.translate(GenJVM.java:110) at scalac.backend.jvm.GenJVMPhase.apply(GenJVMPhase.java:45) at scalac.Global.compile(Global.java:293) at scalac.Global.compile(Global.java:266) at scalac.Main.main(Main.java:32) |
|||
| what expected | no error. |
|||
| [back to overview] | ||||
| Philippe edited on 2003-10-10 14:19:27.0 |
|
Added title and category. Improved test file. |
| Philippe edited on 2003-10-15 15:14:46.0 |
|
Fixed GenJVM to handle all |