-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Description
Compiler version
3.7.2
Minimized code
In file1.scala
sealed trait N[T]
case class MakeTuple[T <: Tuple](v: T) extends N[T]
In file2.scala
object test {
def t[T](expr: N[T]): Any =
expr match {
case MakeTuple(_) => ???
}
}
Output
$ scalac file1.scala && scalac file2.scala
-- [E029] Pattern Match Exhaustivity Warning: file2.scala:3:4 ------------------
3 | expr match {
| ^^^^
| match may not be exhaustive.
|
| It would fail on pattern case: MakeTuple(_)
|
| longer explanation available when compiling with `-explain`
1 warning found
But compiling in a single scalac call e.g scalac file1.scala file2.scala
gives no warnings.
Expectation
Ideally no warning should be produced. But consistently producing the warning would also be an improvement.