eae72eac54
... w.r.t the variance of their type arguments. Because `Object[]` is represented as `Array<Any>..Array<out Any>?`, when we substitute, we can't just take the upper bound because it changes the variance of the type agument. Instead, we construct a flexible type and use both bounds, like with collections with flexible mutability. #KT-65246 Fixed