backend: Use simple DFS during closure building.
Now closure builder can contain includes. Includes
are another builders which closures must be added
to the building one.
Includes are:
For function closure:
call targets (including constructors)
callable reference targets
For class:
all children declarations
call targets (including constructors)
callable reference targets
For constructor:
call and callable reference targets
delegating constructor call target
constructing class closure
This commit is contained in:
@@ -7,5 +7,17 @@ fun main(args : Array<String>) {
|
||||
}
|
||||
local0()
|
||||
}
|
||||
|
||||
fun l1() {
|
||||
var x = 1
|
||||
fun l2() {
|
||||
fun l3() {
|
||||
l1()
|
||||
x = 5
|
||||
}
|
||||
l3()
|
||||
}
|
||||
}
|
||||
|
||||
println("OK")
|
||||
}
|
||||
Reference in New Issue
Block a user