FIR2IR: don't generate IrGetObject for anonymous objects
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
interface Visitor {
|
||||
abstract fun visit()
|
||||
fun visitArray(): Visitor? {
|
||||
return null
|
||||
}
|
||||
|
||||
fun visitAnnotation(): Visitor? {
|
||||
return null
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class AnnotationLoader {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
fun loadAnnotation(): Visitor? {
|
||||
return { // BLOCK
|
||||
local class <no name provided> : Visitor {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
override fun visit() {
|
||||
}
|
||||
|
||||
override fun visitArray(): Visitor? {
|
||||
return { // BLOCK
|
||||
local class <no name provided> : Visitor {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
override fun visit() {
|
||||
<this>.foo()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
<no name provided>()
|
||||
}
|
||||
}
|
||||
|
||||
override fun visitAnnotation(): Visitor? {
|
||||
val visitor: Visitor = CHECK_NOT_NULL<Visitor>(arg0 = <this>.loadAnnotation())
|
||||
return { // BLOCK
|
||||
local class <no name provided> : Visitor {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
private /* final field */ val $$delegate_0: Visitor = visitor
|
||||
override fun visitAnnotation(): Visitor? {
|
||||
return <this>.#$$delegate_0.visitAnnotation()
|
||||
}
|
||||
|
||||
override fun visitArray(): Visitor? {
|
||||
return <this>.#$$delegate_0.visitArray()
|
||||
}
|
||||
|
||||
override fun visit() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
<no name provided>()
|
||||
}
|
||||
}
|
||||
|
||||
private fun foo() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
<no name provided>()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user