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:
committed by
Space Team
parent
29ecc4d987
commit
f318b5969d
+2
-1
@@ -136,9 +136,10 @@ private val functionInliningPhase = makeCustomPhase<WasmBackendContext>(
|
||||
{ context, module ->
|
||||
FunctionInlining(
|
||||
context = context,
|
||||
innerClassesSupport = context.innerClassesSupport,
|
||||
inlineFunctionResolver = WasmInlineFunctionResolver(context),
|
||||
innerClassesSupport = context.innerClassesSupport,
|
||||
insertAdditionalImplicitCasts = true,
|
||||
alwaysCreateTemporaryVariablesForArguments = true
|
||||
).inline(module)
|
||||
module.patchDeclarationParents()
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user