Pseudocode: Bind nondeterministic jump caused by local declaration to declaration iself instead of its parent element

#KT-6261 Fixed
 #KT-6416 Fixed
This commit is contained in:
Alexey Sedunov
2015-01-12 14:15:34 +03:00
parent 81715d1fca
commit 9278dee1a4
13 changed files with 145 additions and 4 deletions
@@ -0,0 +1,17 @@
== test ==
fun test(): Int {
val j = 1
fun local() = 1
return local()
}
---------------------
1 <v0>: Int NEW: r(1) -> <v0>
local() <v1>: Int NEW: call(local(), local) -> <v1>
return local() !<v2>: *
{ val j = 1 fun local() = 1 return local() } !<v2>: * COPY
=====================
== local ==
fun local() = 1
---------------------
1 <v0>: Int NEW: r(1) -> <v0>
=====================