Port https://github.com/sbt/zinc/pull/979 ## Compiler version 3.0.0 and a956774180d124adc98527863b919c35d5f9db92 ## Minimized code ```scala // A.scala sealed trait Z sealed trait A extends Z class B extends A class C extends A // class D extends A ``` ```Scala // App.scala object App { def foo(z: Z) = z match { case _: B => case _: C => } } ``` ## Output if you compile `A` and `App`, uncomment the line in `A` and recompile, then `App` does not recompile ## Expectation exhaustivity warning `match may not be exhaustive. It would fail on pattern case: _: D`