StackOverflow fix on type remapping
This commit is contained in:
@@ -45,7 +45,7 @@ class AsmTypeRemapper(val typeRemapper: TypeRemapper, val isDefaultGeneration: B
|
||||
return super.visitTypeVariable(mapping.newName)
|
||||
}
|
||||
// else TypeVariable is replaced by concrete type
|
||||
SignatureReader(mapping.signature).accept(this)
|
||||
SignatureReader(mapping.signature).accept(v)
|
||||
}
|
||||
|
||||
override fun visitFormalTypeParameter(name: String) {
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
//NO_CHECK_LAMBDA_INLINING
|
||||
|
||||
import test.*
|
||||
import java.util.*
|
||||
|
||||
|
||||
class I<A>(val s: A)
|
||||
class A<T : Any>(val elements: List<I<T>>) {
|
||||
val p = elements.sortedBy { it.hashCode() }
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
|
||||
A(listOf(I("1"), I("2"), I("3"))).p
|
||||
|
||||
return "OK"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
package test
|
||||
|
||||
|
||||
inline fun stub() {
|
||||
|
||||
}
|
||||
+6
@@ -1423,6 +1423,12 @@ public class BlackBoxInlineCodegenTestGenerated extends AbstractBlackBoxInlineCo
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/signature"), Pattern.compile("^(.+)\\.1.kt$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("recursion.1.kt")
|
||||
public void testRecursion() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxInline/signature/recursion.1.kt");
|
||||
doTestMultiFileWithInlineCheck(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("sameFormalParameterName.1.kt")
|
||||
public void testSameFormalParameterName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxInline/signature/sameFormalParameterName.1.kt");
|
||||
|
||||
+6
@@ -1423,6 +1423,12 @@ public class CompileKotlinAgainstInlineKotlinTestGenerated extends AbstractCompi
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/signature"), Pattern.compile("^(.+)\\.1.kt$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("recursion.1.kt")
|
||||
public void testRecursion() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxInline/signature/recursion.1.kt");
|
||||
doBoxTestWithInlineCheck(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("sameFormalParameterName.1.kt")
|
||||
public void testSameFormalParameterName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxInline/signature/sameFormalParameterName.1.kt");
|
||||
|
||||
Reference in New Issue
Block a user