Debugger: Hide call-site 'this' in inline functions in Kotlin variables mode (KT-30610)

This commit is contained in:
Yan Zhulanow
2019-03-27 22:02:00 +03:00
parent 6dcaa64793
commit b7ea4ccc7e
8 changed files with 59 additions and 7 deletions
@@ -7,8 +7,6 @@ frameInlineFunCallInsideInlineFunKotlinVariables.kt:8
Compile bytecode for element
Compile bytecode for this.prop
frame = bar:8, C {frameInlineFunCallInsideInlineFunKotlinVariables}
this = this = {frameInlineFunCallInsideInlineFunKotlinVariables.C@uniqueID}
- Class has no fields
local = this: frameInlineFunCallInsideInlineFunKotlinVariables.A = {frameInlineFunCallInsideInlineFunKotlinVariables.A@uniqueID} (sp = null)
field = prop: int = 1 (sp = frameInlineFunCallInsideInlineFunKotlinVariables.kt, 11)
local = element: double = 1.0 (sp = frameInlineFunCallInsideInlineFunKotlinVariables.kt, 7)
@@ -0,0 +1,21 @@
package inlineFunThisKotlinVariables
class Same {
fun useInline() {
Different().inlineFun()
}
}
class Different {
inline fun inlineFun() {
//Breakpoint!
println(1)
}
}
fun main() {
Same().useInline()
}
// PRINT_FRAME
// SHOW_KOTLIN_VARIABLES
@@ -0,0 +1,11 @@
LineBreakpoint created at inlineFunThisKotlinVariables.kt:12
Run Java
Connected to the target VM
inlineFunThisKotlinVariables.kt:12
frame = useInline:12, Same {inlineFunThisKotlinVariables}
local = this: inlineFunThisKotlinVariables.Different = {inlineFunThisKotlinVariables.Different@uniqueID} (sp = null)
- Class has no fields
Disconnected from the target VM
Process finished with exit code 0
1