JVM_IR. Align outer parameter name generation between backends

This commit is contained in:
Mikhael Bogdanov
2020-01-28 15:20:31 +01:00
parent 17e89fbbdb
commit 504d79577d
6 changed files with 8 additions and 6 deletions
@@ -805,6 +805,8 @@ public class FunctionCodegen {
else if (kind == JvmMethodParameterKind.RECEIVER) {
parameterName = AsmUtil.getNameForReceiverParameter(
functionDescriptor, typeMapper.getBindingContext(), state.getLanguageVersionSettings());
} else if (kind == JvmMethodParameterKind.OUTER) {
parameterName = CAPTURED_THIS_FIELD; //should be 'this$X' depending on inner class nesting
}
else {
String lowercaseKind = kind.name().toLowerCase();
@@ -1,10 +1,10 @@
public final class Foo$Bar : java/lang/Object {
final Foo this$0
public void <init>(Foo $outer) {
public void <init>(Foo this$0) {
Local variables:
0 this: LFoo$Bar;
1 $outer: LFoo;
1 this$0: LFoo;
}
public final void bar() {
@@ -1,7 +1,7 @@
public final class Foo$Bar : java/lang/Object {
final Foo this$0
public void <init>(Foo $outer)
public void <init>(Foo this$0)
}
public final class Foo : java/lang/Object {
@@ -1,7 +1,7 @@
public final class foo/Kotlin$Inner : java/lang/Object {
final foo.Kotlin this$0
public void <init>(foo.Kotlin $outer, java.lang.String s)
public void <init>(foo.Kotlin this$0, java.lang.String s)
@Lfoo/TypeAnn;([]) : METHOD_FORMAL_PARAMETER 0, null
}
@@ -47,7 +47,7 @@ public final class foo/Kotlin : java/lang/Object {
public final class foo/Outer$Inner : java/lang/Object {
final foo.Outer this$0
public void <init>(foo.Outer $outer)
public void <init>(foo.Outer this$0)
}
public final class foo/Outer : java/lang/Object {
@@ -1,7 +1,7 @@
public final class foo/Kotlin$A : java/lang/Object {
final foo.Kotlin this$0
public void <init>(foo.Kotlin $outer)
public void <init>(foo.Kotlin this$0)
public final void fooArray2()
}