38138bf079
Basically, this commit reworks eraseToUpperBound* stuff Instead of a bunch of vague flags, we introduce two modes (rawTypes/intersection emptiness checker) which defined those flags. Also, it makes choosing `eraseArgumentsDeeply` option always because that how it works in K1 and also use invariant projection inside `eraseArgumentsDeeply` for raw types for the same reason. ^KT-57198 Fixed