| [#671] | project: compiler | priority: low | category: missing feature | |
|---|---|---|---|---|
| submitter | assigned to | status | date submitted | |
| Sean | Martin | noise | 2006-07-21 15:03:57.0 | |
| subject | Type aliases do not work supers | |||
| code |
package test;
abstract class A {
type N <: Ni;
trait Ni {
type X <: Xi;
trait Xi;
}
}
trait B extends A {
type N <: Ni;
trait Ni extends super.Ni {
type X <: Xi;
trait Xi extends super.Xi;
type B_Xi = Xi;
}
}
trait C extends A {
type N <: Ni;
trait Ni extends super.Ni {
type X <: Xi;
trait Xi extends super.Xi;
type C_Xi = Xi;
}
}
class D extends B with C {
type N = Ni;
type NiB = B#Ni;
type NiC = C#Ni;
class Ni extends NiB with NiC {
type X = Xi;
trait Xi extends super[NiB].Xi with super[NiC].Xi;
}
}
|
|||
| what happened | Severity and De5cr1p7-haX0Rion Path Resource Location Creation Time Id test.B is not a legal prefix for a constructor test9/src/test Test.scala line 30 1153468421045 15204 NiC does not name a base class of class Ni test9/src/test Test.scala line 32 1153468421044 15203 NiB does not name a base class of class Ni test9/src/test Test.scala line 32 1153468421044 15202 |
|||
| what expected | ||||
| [back to overview] | ||||
| Sean edited on 2006-07-21 15:04:18.0 |
| Sean edited on 2006-07-21 15:04:59.0 |
| Martin edited on 2006-07-24 19:11:08.0 |
| This is correct according to spec. Not sure we need to change it. If yes, how? |