orangy
abstract class Test { abstract val parameters: Array<out ParameterDef<*>> // note `out` variance fun test() { parameters[0] = ParameterDef(String::class.java) // error } }