b2041e0927
There are many complications with the current design of passing data from within in-place lambdas to surrounding code. Solving these complications will involve more time to investigation than is available within the K2 release. So we are disabling passing type statement information from lambdas for the time being until more time can be devoted to a more complete solution. ^KT-60958 Fixed ^KT-63530 Fixed
518 lines
18 KiB
Plaintext
Vendored
518 lines
18 KiB
Plaintext
Vendored
digraph callsInPlace_kt {
|
|
graph [nodesep=3]
|
|
node [shape=box penwidth=2]
|
|
edge [penwidth=2]
|
|
|
|
subgraph cluster_0 {
|
|
color=red
|
|
0 [label="Enter file callsInPlace.kt" style="filled" fillcolor=red];
|
|
1 [label="Exit file callsInPlace.kt" style="filled" fillcolor=red];
|
|
}
|
|
0 -> {1} [color=green];
|
|
|
|
subgraph cluster_1 {
|
|
color=red
|
|
2 [label="Enter function test" style="filled" fillcolor=red];
|
|
subgraph cluster_2 {
|
|
color=blue
|
|
3 [label="Enter block"];
|
|
4 [label="Variable declaration: lval x: R|kotlin/Int|"];
|
|
subgraph cluster_3 {
|
|
color=blue
|
|
5 [label="Function call arguments enter"];
|
|
6 [label="Postponed enter to lambda"];
|
|
subgraph cluster_4 {
|
|
color=blue
|
|
7 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_5 {
|
|
color=blue
|
|
8 [label="Enter block"];
|
|
9 [label="Const: Int(1)"];
|
|
10 [label="Assignment: R|<local>/x|"];
|
|
11 [label="Exit block"];
|
|
}
|
|
12 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
13 [label="Function call arguments exit"];
|
|
}
|
|
14 [label="Postponed exit from lambda"];
|
|
15 [label="Function call: R|kotlin/run|<R|kotlin/Unit|>(...)" style="filled" fillcolor=yellow];
|
|
subgraph cluster_6 {
|
|
color=blue
|
|
16 [label="Function call arguments enter"];
|
|
17 [label="Access variable R|<local>/x|"];
|
|
18 [label="Function call arguments exit"];
|
|
}
|
|
19 [label="Function call: R|<local>/x|.R|kotlin/Int.inc|()" style="filled" fillcolor=yellow];
|
|
20 [label="Exit block"];
|
|
}
|
|
21 [label="Exit function test" style="filled" fillcolor=red];
|
|
}
|
|
2 -> {3};
|
|
3 -> {4};
|
|
4 -> {5};
|
|
5 -> {6};
|
|
6 -> {7 13};
|
|
6 -> {14} [style=dotted];
|
|
6 -> {7} [style=dashed];
|
|
7 -> {8};
|
|
8 -> {9};
|
|
9 -> {10};
|
|
10 -> {11};
|
|
11 -> {12};
|
|
12 -> {14};
|
|
13 -> {15};
|
|
14 -> {15} [label="Postponed"];
|
|
15 -> {16};
|
|
16 -> {17};
|
|
17 -> {18};
|
|
18 -> {19};
|
|
19 -> {20};
|
|
20 -> {21};
|
|
|
|
subgraph cluster_7 {
|
|
color=red
|
|
22 [label="Enter function test_2" style="filled" fillcolor=red];
|
|
subgraph cluster_8 {
|
|
color=blue
|
|
23 [label="Enter block"];
|
|
subgraph cluster_9 {
|
|
color=blue
|
|
24 [label="Function call arguments enter"];
|
|
25 [label="Const: Int(10)"];
|
|
26 [label="Postponed enter to lambda"];
|
|
subgraph cluster_10 {
|
|
color=blue
|
|
27 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_11 {
|
|
color=blue
|
|
28 [label="Enter block"];
|
|
29 [label="Const: String(test_2)"];
|
|
30 [label="Exit block"];
|
|
}
|
|
31 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
32 [label="Function call arguments exit"];
|
|
}
|
|
33 [label="Postponed exit from lambda"];
|
|
34 [label="Function call: R|kotlin/repeat|(...)" style="filled" fillcolor=yellow];
|
|
35 [label="Exit block"];
|
|
}
|
|
36 [label="Exit function test_2" style="filled" fillcolor=red];
|
|
}
|
|
22 -> {23};
|
|
23 -> {24};
|
|
24 -> {25};
|
|
25 -> {26};
|
|
26 -> {27 32 33};
|
|
26 -> {27} [style=dashed];
|
|
27 -> {28};
|
|
28 -> {29};
|
|
29 -> {30};
|
|
30 -> {31};
|
|
31 -> {33};
|
|
32 -> {34};
|
|
33 -> {26} [color=green style=dashed];
|
|
33 -> {34} [label="Postponed"];
|
|
34 -> {35};
|
|
35 -> {36};
|
|
|
|
subgraph cluster_12 {
|
|
color=red
|
|
37 [label="Enter function test_3" style="filled" fillcolor=red];
|
|
subgraph cluster_13 {
|
|
color=blue
|
|
38 [label="Enter block"];
|
|
subgraph cluster_14 {
|
|
color=blue
|
|
39 [label="Function call arguments enter"];
|
|
40 [label="Const: Int(10)"];
|
|
41 [label="Postponed enter to lambda"];
|
|
subgraph cluster_15 {
|
|
color=blue
|
|
42 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_16 {
|
|
color=blue
|
|
43 [label="Enter block"];
|
|
44 [label="Const: String(test_3)"];
|
|
45 [label="Exit block"];
|
|
}
|
|
46 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
47 [label="Function call arguments exit"];
|
|
}
|
|
48 [label="Postponed exit from lambda"];
|
|
49 [label="Function call: R|kotlin/repeat|(...)" style="filled" fillcolor=yellow];
|
|
50 [label="Exit block"];
|
|
}
|
|
51 [label="Exit function test_3" style="filled" fillcolor=red];
|
|
}
|
|
37 -> {38};
|
|
38 -> {39};
|
|
39 -> {40};
|
|
40 -> {41};
|
|
41 -> {42 47 48};
|
|
41 -> {42} [style=dashed];
|
|
42 -> {43};
|
|
43 -> {44};
|
|
44 -> {45};
|
|
45 -> {46};
|
|
46 -> {48};
|
|
47 -> {49};
|
|
48 -> {41} [color=green style=dashed];
|
|
48 -> {49} [label="Postponed"];
|
|
49 -> {50};
|
|
50 -> {51};
|
|
|
|
subgraph cluster_17 {
|
|
color=red
|
|
52 [label="Enter function test_4" style="filled" fillcolor=red];
|
|
subgraph cluster_18 {
|
|
color=blue
|
|
53 [label="Enter block"];
|
|
subgraph cluster_19 {
|
|
color=blue
|
|
54 [label="Function call arguments enter"];
|
|
55 [label="Const: Int(1)"];
|
|
56 [label="Postponed enter to lambda"];
|
|
subgraph cluster_20 {
|
|
color=blue
|
|
57 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_21 {
|
|
color=blue
|
|
58 [label="Enter block"];
|
|
59 [label="Const: String(test_4)"];
|
|
subgraph cluster_22 {
|
|
color=blue
|
|
60 [label="Function call arguments enter"];
|
|
61 [label="Access variable R|<local>/it|"];
|
|
62 [label="Const: Int(0)"];
|
|
63 [label="Function call arguments exit"];
|
|
}
|
|
64 [label="Function call: R|<local>/it|.R|kotlin/Int.compareTo|(...)" style="filled" fillcolor=yellow];
|
|
65 [label="Comparison >"];
|
|
66 [label="Exit block"];
|
|
}
|
|
67 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
68 [label="Function call arguments exit"];
|
|
}
|
|
69 [label="Postponed exit from lambda"];
|
|
70 [label="Function call: Int(1).R|kotlin/takeUnless|<R|kotlin/Int|>(...)" style="filled" fillcolor=yellow];
|
|
71 [label="Exit block"];
|
|
}
|
|
72 [label="Exit function test_4" style="filled" fillcolor=red];
|
|
}
|
|
52 -> {53};
|
|
53 -> {54};
|
|
54 -> {55};
|
|
55 -> {56};
|
|
56 -> {57 68};
|
|
56 -> {69} [style=dotted];
|
|
56 -> {57} [style=dashed];
|
|
57 -> {58};
|
|
58 -> {59};
|
|
59 -> {60};
|
|
60 -> {61};
|
|
61 -> {62};
|
|
62 -> {63};
|
|
63 -> {64};
|
|
64 -> {65};
|
|
65 -> {66};
|
|
66 -> {67};
|
|
67 -> {69};
|
|
68 -> {70};
|
|
69 -> {70} [label="Postponed"];
|
|
70 -> {71};
|
|
71 -> {72};
|
|
|
|
subgraph cluster_23 {
|
|
color=red
|
|
73 [label="Enter function test_5" style="filled" fillcolor=red];
|
|
subgraph cluster_24 {
|
|
color=blue
|
|
74 [label="Enter block"];
|
|
subgraph cluster_25 {
|
|
color=blue
|
|
75 [label="Function call arguments enter"];
|
|
76 [label="Const: Int(1)"];
|
|
77 [label="Postponed enter to lambda"];
|
|
subgraph cluster_26 {
|
|
color=blue
|
|
78 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_27 {
|
|
color=blue
|
|
79 [label="Enter block"];
|
|
80 [label="Const: String(test_5)"];
|
|
subgraph cluster_28 {
|
|
color=blue
|
|
81 [label="Function call arguments enter"];
|
|
82 [label="Access variable R|<local>/it|"];
|
|
83 [label="Const: Int(0)"];
|
|
84 [label="Function call arguments exit"];
|
|
}
|
|
85 [label="Function call: R|<local>/it|.R|kotlin/Int.compareTo|(...)" style="filled" fillcolor=yellow];
|
|
86 [label="Comparison >"];
|
|
87 [label="Exit block"];
|
|
}
|
|
88 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
89 [label="Function call arguments exit"];
|
|
}
|
|
90 [label="Postponed exit from lambda"];
|
|
91 [label="Function call: Int(1).R|kotlin/takeUnless|<R|kotlin/Int|>(...)" style="filled" fillcolor=yellow];
|
|
92 [label="Exit block"];
|
|
}
|
|
93 [label="Exit function test_5" style="filled" fillcolor=red];
|
|
}
|
|
73 -> {74};
|
|
74 -> {75};
|
|
75 -> {76};
|
|
76 -> {77};
|
|
77 -> {78 89};
|
|
77 -> {90} [style=dotted];
|
|
77 -> {78} [style=dashed];
|
|
78 -> {79};
|
|
79 -> {80};
|
|
80 -> {81};
|
|
81 -> {82};
|
|
82 -> {83};
|
|
83 -> {84};
|
|
84 -> {85};
|
|
85 -> {86};
|
|
86 -> {87};
|
|
87 -> {88};
|
|
88 -> {90};
|
|
89 -> {91};
|
|
90 -> {91} [label="Postponed"];
|
|
91 -> {92};
|
|
92 -> {93};
|
|
|
|
subgraph cluster_29 {
|
|
color=red
|
|
94 [label="Enter function myRun" style="filled" fillcolor=red];
|
|
subgraph cluster_30 {
|
|
color=blue
|
|
95 [label="Enter block"];
|
|
subgraph cluster_31 {
|
|
color=blue
|
|
96 [label="Function call arguments enter"];
|
|
97 [label="Function call arguments exit"];
|
|
}
|
|
98 [label="Function call: R|<local>/block1|.R|SubstitutionOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()" style="filled" fillcolor=yellow];
|
|
subgraph cluster_32 {
|
|
color=blue
|
|
99 [label="Function call arguments enter"];
|
|
100 [label="Function call arguments exit"];
|
|
}
|
|
101 [label="Function call: R|<local>/block2|.R|SubstitutionOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()" style="filled" fillcolor=yellow];
|
|
102 [label="Exit block"];
|
|
}
|
|
103 [label="Exit function myRun" style="filled" fillcolor=red];
|
|
}
|
|
94 -> {95};
|
|
95 -> {96};
|
|
96 -> {97};
|
|
97 -> {98};
|
|
98 -> {99};
|
|
99 -> {100};
|
|
100 -> {101};
|
|
101 -> {102};
|
|
102 -> {103};
|
|
|
|
subgraph cluster_33 {
|
|
color=red
|
|
104 [label="Enter function test_6" style="filled" fillcolor=red];
|
|
subgraph cluster_34 {
|
|
color=blue
|
|
105 [label="Enter block"];
|
|
subgraph cluster_35 {
|
|
color=blue
|
|
106 [label="Function call arguments enter"];
|
|
107 [label="Postponed enter to lambda"];
|
|
subgraph cluster_36 {
|
|
color=blue
|
|
108 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_37 {
|
|
color=blue
|
|
109 [label="Enter block"];
|
|
110 [label="Const: String(test_6_2)"];
|
|
111 [label="Exit block"];
|
|
}
|
|
112 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
subgraph cluster_38 {
|
|
color=blue
|
|
113 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_39 {
|
|
color=blue
|
|
114 [label="Enter block"];
|
|
115 [label="Const: String(test_6_1)"];
|
|
116 [label="Exit block"];
|
|
}
|
|
117 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
118 [label="Function call arguments exit"];
|
|
}
|
|
119 [label="Postponed exit from lambda"];
|
|
120 [label="Postponed exit from lambda"];
|
|
121 [label="Function call: R|/myRun|(...)" style="filled" fillcolor=yellow];
|
|
122 [label="Exit block"];
|
|
}
|
|
123 [label="Exit function test_6" style="filled" fillcolor=red];
|
|
}
|
|
104 -> {105};
|
|
105 -> {106};
|
|
106 -> {107};
|
|
107 -> {108 113 118 119 120};
|
|
107 -> {108 113} [style=dashed];
|
|
108 -> {109};
|
|
109 -> {110};
|
|
110 -> {111};
|
|
111 -> {112};
|
|
112 -> {119};
|
|
113 -> {114};
|
|
114 -> {115};
|
|
115 -> {116};
|
|
116 -> {117};
|
|
117 -> {120};
|
|
118 -> {121};
|
|
119 -> {107} [color=green style=dashed];
|
|
119 -> {121} [label="Postponed"];
|
|
120 -> {107} [color=green style=dashed];
|
|
120 -> {121} [label="Postponed"];
|
|
121 -> {122};
|
|
122 -> {123};
|
|
|
|
subgraph cluster_40 {
|
|
color=red
|
|
124 [label="Enter function test_7" style="filled" fillcolor=red];
|
|
subgraph cluster_41 {
|
|
color=blue
|
|
125 [label="Enter block"];
|
|
subgraph cluster_42 {
|
|
color=blue
|
|
126 [label="Function call arguments enter"];
|
|
127 [label="Postponed enter to lambda"];
|
|
subgraph cluster_43 {
|
|
color=blue
|
|
128 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_44 {
|
|
color=blue
|
|
129 [label="Enter block"];
|
|
130 [label="Const: String(test_7_1)"];
|
|
131 [label="Exit block"];
|
|
}
|
|
132 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
subgraph cluster_45 {
|
|
color=blue
|
|
133 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_46 {
|
|
color=blue
|
|
134 [label="Enter block"];
|
|
135 [label="Const: String(test_7_2)"];
|
|
136 [label="Exit block"];
|
|
}
|
|
137 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
138 [label="Function call arguments exit"];
|
|
}
|
|
139 [label="Postponed exit from lambda"];
|
|
140 [label="Postponed exit from lambda"];
|
|
141 [label="Function call: R|/myRun|(...)" style="filled" fillcolor=yellow];
|
|
142 [label="Exit block"];
|
|
}
|
|
143 [label="Exit function test_7" style="filled" fillcolor=red];
|
|
}
|
|
124 -> {125};
|
|
125 -> {126};
|
|
126 -> {127};
|
|
127 -> {128 133 138 139 140};
|
|
127 -> {128 133} [style=dashed];
|
|
128 -> {129};
|
|
129 -> {130};
|
|
130 -> {131};
|
|
131 -> {132};
|
|
132 -> {139};
|
|
133 -> {134};
|
|
134 -> {135};
|
|
135 -> {136};
|
|
136 -> {137};
|
|
137 -> {140};
|
|
138 -> {141};
|
|
139 -> {127} [color=green style=dashed];
|
|
139 -> {141} [label="Postponed"];
|
|
140 -> {127} [color=green style=dashed];
|
|
140 -> {141} [label="Postponed"];
|
|
141 -> {142};
|
|
142 -> {143};
|
|
|
|
subgraph cluster_47 {
|
|
color=red
|
|
144 [label="Enter function myDummyRun" style="filled" fillcolor=red];
|
|
subgraph cluster_48 {
|
|
color=blue
|
|
145 [label="Enter block"];
|
|
subgraph cluster_49 {
|
|
color=blue
|
|
146 [label="Function call arguments enter"];
|
|
147 [label="Function call arguments exit"];
|
|
}
|
|
148 [label="Function call: R|<local>/block|.R|SubstitutionOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()" style="filled" fillcolor=yellow];
|
|
149 [label="Exit block"];
|
|
}
|
|
150 [label="Exit function myDummyRun" style="filled" fillcolor=red];
|
|
}
|
|
144 -> {145};
|
|
145 -> {146};
|
|
146 -> {147};
|
|
147 -> {148};
|
|
148 -> {149};
|
|
149 -> {150};
|
|
|
|
subgraph cluster_50 {
|
|
color=red
|
|
151 [label="Enter function test_8" style="filled" fillcolor=red];
|
|
subgraph cluster_51 {
|
|
color=blue
|
|
152 [label="Enter block"];
|
|
subgraph cluster_52 {
|
|
color=blue
|
|
153 [label="Function call arguments enter"];
|
|
154 [label="Postponed enter to lambda"];
|
|
subgraph cluster_53 {
|
|
color=blue
|
|
155 [label="Enter function <anonymous>" style="filled" fillcolor=red];
|
|
subgraph cluster_54 {
|
|
color=blue
|
|
156 [label="Enter block"];
|
|
157 [label="Const: String(test_8)"];
|
|
158 [label="Exit block"];
|
|
}
|
|
159 [label="Exit function <anonymous>" style="filled" fillcolor=red];
|
|
}
|
|
160 [label="Function call arguments exit"];
|
|
}
|
|
161 [label="Postponed exit from lambda"];
|
|
162 [label="Function call: R|/myDummyRun|(...)" style="filled" fillcolor=yellow];
|
|
163 [label="Exit block"];
|
|
}
|
|
164 [label="Exit function test_8" style="filled" fillcolor=red];
|
|
}
|
|
151 -> {152};
|
|
152 -> {153};
|
|
153 -> {154};
|
|
154 -> {155 160 161};
|
|
154 -> {155} [style=dashed];
|
|
155 -> {156};
|
|
156 -> {157};
|
|
157 -> {158};
|
|
158 -> {159};
|
|
160 -> {162};
|
|
161 -> {162} [label="Postponed"];
|
|
162 -> {163};
|
|
163 -> {164};
|
|
|
|
}
|