diff options
Diffstat (limited to 'tests/untried/pos/t4853.scala')
-rw-r--r-- | tests/untried/pos/t4853.scala | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/untried/pos/t4853.scala b/tests/untried/pos/t4853.scala new file mode 100644 index 000000000..f227ef36e --- /dev/null +++ b/tests/untried/pos/t4853.scala @@ -0,0 +1,12 @@ +object Animal { + def main(args: Array[String]): Unit = { new Animal[Awake].goToSleep } +} + +class Animal[A <: AwakeOrAsleep] { + def goToSleep[B >: A <: Awake]: Animal[Asleep] = new Animal[Asleep] + def wakeUp[B >: A <: Asleep]: Animal[Awake] = new Animal[Awake] +} + +sealed trait AwakeOrAsleep +trait Awake extends AwakeOrAsleep +trait Asleep extends AwakeOrAsleep |