Erase non-reified type parameters by-default when inlining.

Substitution of type arguments to non-reified type parameters may lead
to accidental reification, which should not be done (see ^KT-60174 for
examples). So, we should erase them, except the few cases.

^KT-60174: Fixed
^KT-60175: Fixed
This commit is contained in:
vladislav.grechko
2023-07-27 18:30:50 +02:00
committed by Space Team
parent 29ecc4d987
commit f318b5969d
89 changed files with 2369 additions and 280 deletions
+1 -4
View File
@@ -164,10 +164,7 @@ fun box() {
// Throwable.kt:23 $kotlin.Throwable.<init> (32, 38, 27, 27, 43, 32, 38, 27, 27, 43, 32, 38, 27, 27, 43)
// Throwable.kt:18 $kotlin.Throwable.<init> (28, 62, 28, 62, 28, 62)
// Throwable.kt:25 $kotlin.Throwable.<init> (50, 50, 50)
// ExternalWrapper.kt:225 $kotlin.wasm.internal.jsCheckIsNullOrUndefinedAdapter (6, 31, 6, 31, 6, 31)
// Standard.kt:123 $kotlin.wasm.internal.jsCheckIsNullOrUndefinedAdapter (4, 4, 4)
// Standard.kt:126 $kotlin.wasm.internal.jsCheckIsNullOrUndefinedAdapter (15, 32, 4, 15, 32, 4, 15, 32, 4)
// Standard.kt:158 $kotlin.wasm.internal.jsCheckIsNullOrUndefinedAdapter (1728, 1718, 1717, 1717, 1728, 1718, 1717, 1717, 1728, 1718, 1717, 1717)
// ExternalWrapper.kt:226 $kotlin.wasm.internal.jsCheckIsNullOrUndefinedAdapter (18, 8, 32, 33, 18, 8, 32, 33, 18, 8, 32, 33)
// Throwable.kt:27 $kotlin.Throwable.<init> (34, 34, 34)
// Throwable.kt:39 $kotlin.Throwable.<init> (69, 69, 69)
// Throwable.kt:49 $kotlin.Throwable.<init> (1, 1, 1)