Such cases might be interesting under specialization; that's the subject of [SI-7172](https://issues.scala-lang.org/browse/SI-7172). We could also handle this earlier by emitting `if (x eq null) false else [[x.tpe <:< checkTp]]` rather than `x.isInstanceOf[checkTp]` in `Erasure`, as we have all the type information at hand there. But I guess that doesn't profit from more refined type information gleaned through iteration of this optimization process.