Use class name instead internal name in coroutines debug metadata

I.e. instead of slashes use dots in fqnames.

 #KT-28237 Fixed
This commit is contained in:
Ilmir Usmanov
2018-11-20 15:21:02 +03:00
parent 5483ce0933
commit bdd1eef39a
5 changed files with 57 additions and 1 deletions
@@ -284,7 +284,7 @@ class CoroutineTransformerMethodVisitor(
variablesMapping.forEach { v.visit(null, it.variableName) }
}.visitEnd()
metadata.visit(COROUTINES_METADATA_METHOD_NAME_JVM_NAME, methodNode.name)
metadata.visit(COROUTINES_METADATA_CLASS_NAME_JVM_NAME, containingClassInternalName)
metadata.visit(COROUTINES_METADATA_CLASS_NAME_JVM_NAME, Type.getObjectType(containingClassInternalName).className)
@Suppress("ConstantConditionIf")
if (COROUTINES_DEBUG_METADATA_VERSION != 1) {
metadata.visit(COROUTINES_METADATA_VERSION_JVM_NAME, COROUTINES_DEBUG_METADATA_VERSION)