aboutsummaryrefslogtreecommitdiff
path: root/tests/patmat/t4020.scala
blob: f9764601910a00a1b75e7a4c6dbb03c59dfd4a42 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
class A {
    sealed trait Foo
}

object a1 extends A {
    case class Foo1(i: Int) extends Foo
}

object a2 extends A {
    case class Foo2(i: Int) extends Foo
}

class B {
    def mthd(foo: a2.Foo) = {
        foo match {
            case a2.Foo2(i) => i

            // Note: This case is impossible.  In fact, scalac
            // will (correctly) report an error if it is uncommented,
            // but a warning if it is commented.

            // case a1.Foo1(i) => i
        }
    }
}