diff options
author | Paul Phillips <paulp@improving.org> | 2011-05-06 04:32:39 +0000 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2011-05-06 04:32:39 +0000 |
commit | 311b7de861bd2f4137e3503483177a1588cfdd12 (patch) | |
tree | 7b784b842cdf4a791a056e045eb4aa208c1e755a /test/files/pos/bug4020.scala | |
parent | 14cd653295b5ed3f10b82193a9fb6da0867e31d6 (diff) | |
download | scala-311b7de861bd2f4137e3503483177a1588cfdd12.tar.gz scala-311b7de861bd2f4137e3503483177a1588cfdd12.tar.bz2 scala-311b7de861bd2f4137e3503483177a1588cfdd12.zip |
Finally figured out what was going on with a ce...
Finally figured out what was going on with a certain class of
exhaustiveness checking bugs. Hey moors, you can put away your pins,
puppets, and magic sauces. Closes #3098, no review.
Diffstat (limited to 'test/files/pos/bug4020.scala')
-rw-r--r-- | test/files/pos/bug4020.scala | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/files/pos/bug4020.scala b/test/files/pos/bug4020.scala new file mode 100644 index 0000000000..f976460191 --- /dev/null +++ b/test/files/pos/bug4020.scala @@ -0,0 +1,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 + } + } +}
\ No newline at end of file |