K2: generate Unit conversion for indexed assignment at raw FIR stage

#KT-59748 Fixed
This commit is contained in:
Mikhail Glukhikh
2023-07-24 22:11:30 +02:00
committed by Space Team
parent 1832413a02
commit f20e2dec31
33 changed files with 160 additions and 16 deletions
@@ -8,6 +8,7 @@ FILE: setWithTrailingLambda.kt
^ Unit
}
)
Unit
}
public final data class EditorData : R|kotlin/Any| {
public constructor(meta: R|MyMap<EditorData, kotlin/Any>|): R|EditorData| {
@@ -46,10 +46,13 @@ FILE: arraySet.kt
}
public final fun test_1(a: R|A<B>|): R|kotlin/Unit| {
R|<local>/a|.R|SubstitutionOverride</A.set: R|kotlin/Unit|>|(Int(0), R|/B.B|())
Unit
}
public final fun test_2(a: R|A<C>|): R|kotlin/Unit| {
R|<local>/a|.R|SubstitutionOverride</A.set: R|kotlin/Unit|>|(Int(0), R|/C.C|())
Unit
}
public final fun test_3(a: R|A<D>|): R|kotlin/Unit| {
R|<local>/a|.R|SubstitutionOverride</A.set: R|kotlin/Unit|>|(Int(0), R|/D.D|())
Unit
}
@@ -26,6 +26,7 @@ FILE: notUselessCast_3.kt
}
)
R|<local>/cards|.R|SubstitutionOverride<kotlin/collections/List.get: R|kotlin/collections/List<kotlin/collections/MutableList<Square>>|>|(Int(0)).R|SubstitutionOverride<kotlin/collections/List.get: R|kotlin/collections/MutableList<Square>|>|(Int(0)).R|SubstitutionOverride<kotlin/collections/MutableList.set: R|Square|>|(Int(0), Q|MARKED|)
Unit
}
public final fun test_2(): R|kotlin/Unit| {
lval lines: R|kotlin/collections/List<kotlin/String>| = R|kotlin/collections/listOf|<R|kotlin/String|>()
@@ -40,4 +41,5 @@ FILE: notUselessCast_3.kt
}
)
R|<local>/cards|.R|SubstitutionOverride<kotlin/collections/List.get: R|kotlin/collections/List<kotlin/collections/MutableList<UNMARKED>>|>|(Int(0)).R|SubstitutionOverride<kotlin/collections/List.get: R|kotlin/collections/MutableList<UNMARKED>|>|(Int(0)).R|SubstitutionOverride<kotlin/collections/MutableList.set: R|UNMARKED|><Inapplicable(INAPPLICABLE): kotlin/collections/MutableList.set>#|(Int(0), Q|MARKED|)
Unit
}
@@ -12,6 +12,7 @@ FILE: typeAliasWithForEach.kt
lval result: R|java/util/HashMap<kotlin/String, ArgsInfo>| = R|java/util/HashMap.HashMap|<R|kotlin/String|, R|ArgsInfo|>()
this@R|/deepCopy|.R|SubstitutionOverride<kotlin/collections/Map.forEach: R|kotlin/Unit|>|(<L> = forEach@fun <anonymous>(key: R|@EnhancedNullability kotlin/String|, value: R|@EnhancedNullability ArgsInfo|): R|kotlin/Unit| <inline=NoInline> {
R|<local>/result|.R|kotlin/collections/set|<R|kotlin/String|, R|ArgsInfo|>(R|<local>/key|, R|/ArgsInfoImpl.ArgsInfoImpl|(R|<local>/value|))
Unit
}
)
^deepCopy R|<local>/result|