[FIR2IR] Consolidate type approximation

This commit gets rid of the redundant typeApproximatorConfiguration
in Fir2IrTypeConverter and uses the type approximator for captured
types instead of the manual approximation used before.

This fixes the nullability of approximated captured types, which fixes
a runtime error in WASM.

This also brings K2 IR closer to K1 IR in one test.

#KT-64261 Fixed
This commit is contained in:
Kirill Rakhman
2023-12-21 13:16:33 +01:00
committed by Space Team
parent 52a1ffb312
commit 49ae1b8d01
26 changed files with 281 additions and 22 deletions
@@ -16567,6 +16567,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes
runTest("compiler/testData/codegen/box/fir/StackOverflowInAnnotationLoader.kt");
}
@TestMetadata("starProjectionLambdaNullReturn.kt")
public void testStarProjectionLambdaNullReturn() throws Exception {
runTest("compiler/testData/codegen/box/fir/starProjectionLambdaNullReturn.kt");
}
@TestMetadata("staticImportFromEnum.kt")
public void testStaticImportFromEnum() throws Exception {
runTest("compiler/testData/codegen/box/fir/staticImportFromEnum.kt");