FIR2IR: use lookupTag or class to getLocalClass, not classId

Before this commit, we sometimes tried to fetch anonymous object by id,
getting sometimes a wrong result because it's singleton.
Now we use lookupTag or FIR class itself instead.

#KT-44050 Fixed
This commit is contained in:
Jinseong Jeon
2020-12-22 22:02:50 -08:00
committed by Mikhail Glukhikh
parent 94315bc4dc
commit 34dbbdce07
12 changed files with 109 additions and 35 deletions
@@ -15939,6 +15939,11 @@ public class IrJsCodegenBoxES6TestGenerated extends AbstractIrJsCodegenBoxES6Tes
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectAsIterator.kt");
}
@TestMetadata("useAnonymousObjectFunction.kt")
public void testUseAnonymousObjectFunction() throws Exception {
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectFunction.kt");
}
@TestMetadata("useImportedMember.kt")
public void testUseImportedMember() throws Exception {
runTest("compiler/testData/codegen/box/objects/useImportedMember.kt");
@@ -15939,6 +15939,11 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest {
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectAsIterator.kt");
}
@TestMetadata("useAnonymousObjectFunction.kt")
public void testUseAnonymousObjectFunction() throws Exception {
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectFunction.kt");
}
@TestMetadata("useImportedMember.kt")
public void testUseImportedMember() throws Exception {
runTest("compiler/testData/codegen/box/objects/useImportedMember.kt");
@@ -16004,6 +16004,11 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest {
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectAsIterator.kt");
}
@TestMetadata("useAnonymousObjectFunction.kt")
public void testUseAnonymousObjectFunction() throws Exception {
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectFunction.kt");
}
@TestMetadata("useImportedMember.kt")
public void testUseImportedMember() throws Exception {
runTest("compiler/testData/codegen/box/objects/useImportedMember.kt");
@@ -9980,6 +9980,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectAsIterator.kt");
}
@TestMetadata("useAnonymousObjectFunction.kt")
public void testUseAnonymousObjectFunction() throws Exception {
runTest("compiler/testData/codegen/box/objects/useAnonymousObjectFunction.kt");
}
@TestMetadata("useImportedMember.kt")
public void testUseImportedMember() throws Exception {
runTest("compiler/testData/codegen/box/objects/useImportedMember.kt");