bcv: use kotlinx-metadata-jvm to read kotlin visibilities

It's no longer required to dump kotlin-to-java declaration mapping to json
before using binary-compatibility-validator.

@JvmOverloads are not supported yet, so remove them from test.

Use asm:6.0 in bcv
This commit is contained in:
Ilya Gorbunov
2018-05-20 18:36:47 +03:00
parent 1872550f25
commit fcf323851e
8 changed files with 298 additions and 45 deletions
@@ -15,15 +15,3 @@ public final class cases/default/InterfaceFunctions$DefaultImpls {
public static synthetic fun withSomeDefaults$default (Lcases/default/InterfaceFunctions;ILjava/lang/String;ILjava/lang/Object;)V
}
public final class cases/default/JvmOverloadsClass {
public final fun getA ()I
public final fun getB ()Ljava/lang/String;
}
public final class cases/default/JvmOverloadsKt {
public static final fun publicFunWithOverloads ()V
public static final fun publicFunWithOverloads (I)V
public static final fun publicFunWithOverloads (ILjava/lang/String;)V
public static synthetic fun publicFunWithOverloads$default (ILjava/lang/String;ILjava/lang/Object;)V
}
@@ -8,6 +8,9 @@
package cases.default
/* JvmOverloads are not supported by metadata reader
@JvmOverloads
public fun publicFunWithOverloads(a: Int = 0, b: String? = null) {}
@@ -21,4 +24,22 @@ internal constructor(val a: Int = 0, val b: String? = null) {
@JvmOverloads
internal fun internalFunWithOverloads(a: Int = 0, b: String? = null) {}
}
}
*/
/* expected:
public final class cases/default/JvmOverloadsClass {
public final fun getA ()I
public final fun getB ()Ljava/lang/String;
}
public final class cases/default/JvmOverloadsKt {
public static final fun publicFunWithOverloads ()V
public static final fun publicFunWithOverloads (I)V
public static final fun publicFunWithOverloads (ILjava/lang/String;)V
public static synthetic fun publicFunWithOverloads$default (ILjava/lang/String;ILjava/lang/Object;)V
}
*/