Why does the second function fail to compile while the first compiles cleanly?inline fun <reified T> isType(value: Any) = value is T fun <T> isTypePlain(value: Any) = value is T // line in question