blob: 9244b3d353ca6330b69e5b1557760a4d79516639 (
plain) (
tree)
|
|
trait U {
trait ValOrDefDefApi {
def name: Any
}
type ValOrDefDef <: ValOrDefDefApi
type ValDef <: ValOrDefDef with ValDefApi
trait ValDefApi extends ValOrDefDefApi { this: ValDef => }
val emptyValDef: ValDef // the result type is volatile
}
object Test {
val u: U = ???
u.emptyValDef match {
case u.emptyValDef => // but we shouldn't let that stop us from treating it as a stable identifier pattern.
}
}
|