blob: 4b86d040130020e99dde953cbf052a29dc9fcefe (
plain) (
tree)
|
|
abstract class Obj { type S }
class ObjImpl extends Obj { type S = String }
abstract class A {
type MyObj <: Obj
type S = MyObj#S
val any: Any = 0
val some: S = any // compiles => type X is set to scala.Any
}
class B extends A {
type MyObj = ObjImpl
val myString: S = "hello"
val realString: String = myString // error: type mismatch
}
|