[FIR] Fix incorrect cluster creating in CFG dumps

This commit is contained in:
Dmitriy Novozhilov
2020-10-12 11:09:52 +03:00
parent 3495ec198d
commit f794ced888
19 changed files with 4222 additions and 4274 deletions
@@ -6,8 +6,6 @@ digraph initBlock_kt {
subgraph cluster_0 { subgraph cluster_0 {
color=red color=red
0 [label="Enter class Foo" style="filled" fillcolor=red]; 0 [label="Enter class Foo" style="filled" fillcolor=red];
subgraph cluster_1 {
color=blue
1 [label="Part of class initialization"]; 1 [label="Part of class initialization"];
2 [label="Exit class Foo" style="filled" fillcolor=red]; 2 [label="Exit class Foo" style="filled" fillcolor=red];
} }
@@ -16,7 +14,7 @@ digraph initBlock_kt {
1 -> {6} [color=green]; 1 -> {6} [color=green];
1 -> {6} [style=dashed]; 1 -> {6} [style=dashed];
subgraph cluster_2 { subgraph cluster_1 {
color=red color=red
3 [label="Enter function <init>" style="filled" fillcolor=red]; 3 [label="Enter function <init>" style="filled" fillcolor=red];
4 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 4 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -25,10 +23,10 @@ digraph initBlock_kt {
3 -> {4}; 3 -> {4};
4 -> {5}; 4 -> {5};
subgraph cluster_3 { subgraph cluster_2 {
color=red color=red
6 [label="Enter init block" style="filled" fillcolor=red]; 6 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_4 { subgraph cluster_3 {
color=blue color=blue
7 [label="Enter block"]; 7 [label="Enter block"];
8 [label="Const: Int(1)"]; 8 [label="Const: Int(1)"];
@@ -44,11 +42,9 @@ digraph initBlock_kt {
10 -> {11}; 10 -> {11};
11 -> {2} [color=green]; 11 -> {2} [color=green];
subgraph cluster_5 { subgraph cluster_4 {
color=red color=red
12 [label="Enter class Bar" style="filled" fillcolor=red]; 12 [label="Enter class Bar" style="filled" fillcolor=red];
subgraph cluster_6 {
color=blue
13 [label="Part of class initialization"]; 13 [label="Part of class initialization"];
14 [label="Exit class Bar" style="filled" fillcolor=red]; 14 [label="Exit class Bar" style="filled" fillcolor=red];
} }
@@ -57,7 +53,7 @@ digraph initBlock_kt {
13 -> {18} [color=green]; 13 -> {18} [color=green];
13 -> {18} [style=dashed]; 13 -> {18} [style=dashed];
subgraph cluster_7 { subgraph cluster_5 {
color=red color=red
15 [label="Enter function <init>" style="filled" fillcolor=red]; 15 [label="Enter function <init>" style="filled" fillcolor=red];
16 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 16 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -66,10 +62,10 @@ digraph initBlock_kt {
15 -> {16}; 15 -> {16};
16 -> {17}; 16 -> {17};
subgraph cluster_8 { subgraph cluster_6 {
color=red color=red
18 [label="Enter init block" style="filled" fillcolor=red]; 18 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_9 { subgraph cluster_7 {
color=blue color=blue
19 [label="Enter block"]; 19 [label="Enter block"];
20 [label="Const: Int(1)"]; 20 [label="Const: Int(1)"];
@@ -96,4 +92,4 @@ digraph initBlock_kt {
27 -> {28} [style=dotted]; 27 -> {28} [style=dotted];
28 -> {14} [color=green]; 28 -> {14} [color=green];
} }
@@ -27,8 +27,6 @@ digraph initBlockAndInPlaceLambda_kt {
subgraph cluster_3 { subgraph cluster_3 {
color=red color=red
6 [label="Enter class C" style="filled" fillcolor=red]; 6 [label="Enter class C" style="filled" fillcolor=red];
subgraph cluster_4 {
color=blue
7 [label="Part of class initialization"]; 7 [label="Part of class initialization"];
8 [label="Exit class C" style="filled" fillcolor=red]; 8 [label="Exit class C" style="filled" fillcolor=red];
} }
@@ -37,7 +35,7 @@ digraph initBlockAndInPlaceLambda_kt {
7 -> {12} [color=green]; 7 -> {12} [color=green];
7 -> {12} [style=dashed]; 7 -> {12} [style=dashed];
subgraph cluster_5 { subgraph cluster_4 {
color=red color=red
9 [label="Enter function <init>" style="filled" fillcolor=red]; 9 [label="Enter function <init>" style="filled" fillcolor=red];
10 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 10 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -46,20 +44,20 @@ digraph initBlockAndInPlaceLambda_kt {
9 -> {10}; 9 -> {10};
10 -> {11}; 10 -> {11};
subgraph cluster_6 { subgraph cluster_5 {
color=red color=red
12 [label="Enter init block" style="filled" fillcolor=red]; 12 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_7 { subgraph cluster_6 {
color=blue color=blue
13 [label="Enter block"]; 13 [label="Enter block"];
14 [label="Access variable R|<local>/a|"]; 14 [label="Access variable R|<local>/a|"];
15 [label="Access variable R|/A.b|"]; 15 [label="Access variable R|/A.b|"];
16 [label="Enter safe call"]; 16 [label="Enter safe call"];
17 [label="Postponed enter to lambda"]; 17 [label="Postponed enter to lambda"];
subgraph cluster_8 { subgraph cluster_7 {
color=blue color=blue
25 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 25 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_9 { subgraph cluster_8 {
color=blue color=blue
26 [label="Enter block"]; 26 [label="Enter block"];
27 [label="Access variable R|<local>/a|"]; 27 [label="Access variable R|<local>/a|"];
@@ -102,4 +100,4 @@ digraph initBlockAndInPlaceLambda_kt {
31 -> {18} [color=red]; 31 -> {18} [color=red];
31 -> {19} [color=green]; 31 -> {19} [color=green];
} }
@@ -22,8 +22,6 @@ digraph postponedLambdaInConstructor_kt {
subgraph cluster_2 { subgraph cluster_2 {
color=red color=red
5 [label="Enter class B" style="filled" fillcolor=red]; 5 [label="Enter class B" style="filled" fillcolor=red];
subgraph cluster_3 {
color=blue
6 [label="Part of class initialization"]; 6 [label="Part of class initialization"];
7 [label="Exit class B" style="filled" fillcolor=red]; 7 [label="Exit class B" style="filled" fillcolor=red];
} }
@@ -32,22 +30,22 @@ digraph postponedLambdaInConstructor_kt {
6 -> {29} [color=green]; 6 -> {29} [color=green];
6 -> {29} [style=dashed]; 6 -> {29} [style=dashed];
subgraph cluster_4 { subgraph cluster_3 {
color=red color=red
8 [label="Enter function <init>" style="filled" fillcolor=red]; 8 [label="Enter function <init>" style="filled" fillcolor=red];
9 [label="Access variable R|<local>/s|"]; 9 [label="Access variable R|<local>/s|"];
10 [label="Postponed enter to lambda"]; 10 [label="Postponed enter to lambda"];
subgraph cluster_5 { subgraph cluster_4 {
color=blue color=blue
16 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 16 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_6 { subgraph cluster_5 {
color=blue color=blue
17 [label="Enter block"]; 17 [label="Enter block"];
18 [label="Postponed enter to lambda"]; 18 [label="Postponed enter to lambda"];
subgraph cluster_7 { subgraph cluster_6 {
color=blue color=blue
22 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 22 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_8 { subgraph cluster_7 {
color=blue color=blue
23 [label="Enter block"]; 23 [label="Enter block"];
24 [label="Access variable R|<local>/it|"]; 24 [label="Access variable R|<local>/it|"];
@@ -88,14 +86,14 @@ digraph postponedLambdaInConstructor_kt {
24 -> {25}; 24 -> {25};
25 -> {26}; 25 -> {26};
subgraph cluster_9 { subgraph cluster_8 {
color=red color=red
27 [label="Enter function getter" style="filled" fillcolor=red]; 27 [label="Enter function getter" style="filled" fillcolor=red];
28 [label="Exit function getter" style="filled" fillcolor=red]; 28 [label="Exit function getter" style="filled" fillcolor=red];
} }
27 -> {28}; 27 -> {28};
subgraph cluster_10 { subgraph cluster_9 {
color=red color=red
29 [label="Enter property" style="filled" fillcolor=red]; 29 [label="Enter property" style="filled" fillcolor=red];
30 [label="Access variable R|<local>/s|"]; 30 [label="Access variable R|<local>/s|"];
@@ -105,10 +103,10 @@ digraph postponedLambdaInConstructor_kt {
30 -> {31}; 30 -> {31};
31 -> {7} [color=green]; 31 -> {7} [color=green];
subgraph cluster_11 { subgraph cluster_10 {
color=red color=red
32 [label="Enter function foo" style="filled" fillcolor=red]; 32 [label="Enter function foo" style="filled" fillcolor=red];
subgraph cluster_12 { subgraph cluster_11 {
color=blue color=blue
33 [label="Enter block"]; 33 [label="Enter block"];
34 [label="Function call: this@R|/B|.R|/B.foo|()"]; 34 [label="Function call: this@R|/B|.R|/B.foo|()"];
@@ -121,4 +119,4 @@ digraph postponedLambdaInConstructor_kt {
34 -> {35}; 34 -> {35};
35 -> {36}; 35 -> {36};
} }
@@ -159,8 +159,6 @@ digraph propertiesAndInitBlocks_kt {
subgraph cluster_16 { subgraph cluster_16 {
color=blue color=blue
64 [label="Enter class GetterLocalClass" style="filled" fillcolor=red]; 64 [label="Enter class GetterLocalClass" style="filled" fillcolor=red];
subgraph cluster_17 {
color=blue
65 [label="Part of class initialization"]; 65 [label="Part of class initialization"];
66 [label="Exit class GetterLocalClass" style="filled" fillcolor=red]; 66 [label="Exit class GetterLocalClass" style="filled" fillcolor=red];
} }
@@ -176,7 +174,7 @@ digraph propertiesAndInitBlocks_kt {
65 -> {70} [color=green]; 65 -> {70} [color=green];
65 -> {70} [style=dashed]; 65 -> {70} [style=dashed];
subgraph cluster_18 { subgraph cluster_17 {
color=red color=red
67 [label="Enter function <init>" style="filled" fillcolor=red]; 67 [label="Enter function <init>" style="filled" fillcolor=red];
68 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 68 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -185,10 +183,10 @@ digraph propertiesAndInitBlocks_kt {
67 -> {68}; 67 -> {68};
68 -> {69}; 68 -> {69};
subgraph cluster_19 { subgraph cluster_18 {
color=red color=red
70 [label="Enter init block" style="filled" fillcolor=red]; 70 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_20 { subgraph cluster_19 {
color=blue color=blue
71 [label="Enter block"]; 71 [label="Enter block"];
72 [label="Function call: R|java/lang/Exception.Exception|()"]; 72 [label="Function call: R|java/lang/Exception.Exception|()"];
@@ -207,14 +205,14 @@ digraph propertiesAndInitBlocks_kt {
75 -> {76} [style=dotted]; 75 -> {76} [style=dotted];
76 -> {66} [color=green]; 76 -> {66} [color=green];
subgraph cluster_21 { subgraph cluster_20 {
color=red color=red
77 [label="Enter property" style="filled" fillcolor=red]; 77 [label="Enter property" style="filled" fillcolor=red];
78 [label="Postponed enter to lambda"]; 78 [label="Postponed enter to lambda"];
subgraph cluster_22 { subgraph cluster_21 {
color=blue color=blue
26 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 26 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_23 { subgraph cluster_22 {
color=blue color=blue
27 [label="Enter block"]; 27 [label="Enter block"];
28 [label="Exit local class <anonymous>"]; 28 [label="Exit local class <anonymous>"];
@@ -223,11 +221,9 @@ digraph propertiesAndInitBlocks_kt {
31 [label="Stub" style="filled" fillcolor=gray]; 31 [label="Stub" style="filled" fillcolor=gray];
32 [label="Exit block" style="filled" fillcolor=gray]; 32 [label="Exit block" style="filled" fillcolor=gray];
} }
subgraph cluster_24 { subgraph cluster_23 {
color=blue color=blue
34 [label="Enter class InitializerLocalClass" style="filled" fillcolor=red]; 34 [label="Enter class InitializerLocalClass" style="filled" fillcolor=red];
subgraph cluster_25 {
color=blue
35 [label="Part of class initialization"]; 35 [label="Part of class initialization"];
36 [label="Exit class InitializerLocalClass" style="filled" fillcolor=red]; 36 [label="Exit class InitializerLocalClass" style="filled" fillcolor=red];
} }
@@ -261,23 +257,23 @@ digraph propertiesAndInitBlocks_kt {
35 -> {51} [color=green]; 35 -> {51} [color=green];
35 -> {51} [style=dashed]; 35 -> {51} [style=dashed];
subgraph cluster_26 { subgraph cluster_24 {
color=red color=red
82 [label="Enter function getter" style="filled" fillcolor=red]; 82 [label="Enter function getter" style="filled" fillcolor=red];
83 [label="Exit function getter" style="filled" fillcolor=red]; 83 [label="Exit function getter" style="filled" fillcolor=red];
} }
82 -> {83}; 82 -> {83};
subgraph cluster_27 { subgraph cluster_25 {
color=red color=red
84 [label="Enter property" style="filled" fillcolor=red]; 84 [label="Enter property" style="filled" fillcolor=red];
subgraph cluster_28 { subgraph cluster_26 {
color=blue color=blue
85 [label="Try expression enter"]; 85 [label="Try expression enter"];
subgraph cluster_29 { subgraph cluster_27 {
color=blue color=blue
86 [label="Try main block enter"]; 86 [label="Try main block enter"];
subgraph cluster_30 { subgraph cluster_28 {
color=blue color=blue
87 [label="Enter block"]; 87 [label="Enter block"];
88 [label="Const: Int(1)"]; 88 [label="Const: Int(1)"];
@@ -285,10 +281,10 @@ digraph propertiesAndInitBlocks_kt {
} }
90 [label="Try main block exit"]; 90 [label="Try main block exit"];
} }
subgraph cluster_31 { subgraph cluster_29 {
color=blue color=blue
91 [label="Enter finally"]; 91 [label="Enter finally"];
subgraph cluster_32 { subgraph cluster_30 {
color=blue color=blue
92 [label="Enter block"]; 92 [label="Enter block"];
93 [label="Const: Int(0)"]; 93 [label="Const: Int(0)"];
@@ -296,10 +292,10 @@ digraph propertiesAndInitBlocks_kt {
} }
95 [label="Exit finally"]; 95 [label="Exit finally"];
} }
subgraph cluster_33 { subgraph cluster_31 {
color=blue color=blue
96 [label="Catch enter"]; 96 [label="Catch enter"];
subgraph cluster_34 { subgraph cluster_32 {
color=blue color=blue
97 [label="Enter block"]; 97 [label="Enter block"];
98 [label="Const: Int(2)"]; 98 [label="Const: Int(2)"];
@@ -330,4 +326,4 @@ digraph propertiesAndInitBlocks_kt {
100 -> {101}; 100 -> {101};
101 -> {102}; 101 -> {102};
} }
@@ -6,14 +6,8 @@ digraph secondaryConstructorCfg_kt {
subgraph cluster_0 { subgraph cluster_0 {
color=red color=red
0 [label="Enter class B" style="filled" fillcolor=red]; 0 [label="Enter class B" style="filled" fillcolor=red];
subgraph cluster_1 {
color=blue
1 [label="Part of class initialization"]; 1 [label="Part of class initialization"];
subgraph cluster_2 {
color=blue
2 [label="Part of class initialization"]; 2 [label="Part of class initialization"];
subgraph cluster_3 {
color=blue
3 [label="Part of class initialization"]; 3 [label="Part of class initialization"];
4 [label="Exit class B" style="filled" fillcolor=red]; 4 [label="Exit class B" style="filled" fillcolor=red];
} }
@@ -28,7 +22,7 @@ digraph secondaryConstructorCfg_kt {
3 -> {31} [color=green]; 3 -> {31} [color=green];
3 -> {31} [style=dashed]; 3 -> {31} [style=dashed];
subgraph cluster_4 { subgraph cluster_1 {
color=red color=red
5 [label="Enter function <init>" style="filled" fillcolor=red]; 5 [label="Enter function <init>" style="filled" fillcolor=red];
6 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 6 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -37,14 +31,14 @@ digraph secondaryConstructorCfg_kt {
5 -> {6}; 5 -> {6};
6 -> {7}; 6 -> {7};
subgraph cluster_5 { subgraph cluster_2 {
color=red color=red
8 [label="Enter function getter" style="filled" fillcolor=red]; 8 [label="Enter function getter" style="filled" fillcolor=red];
9 [label="Exit function getter" style="filled" fillcolor=red]; 9 [label="Exit function getter" style="filled" fillcolor=red];
} }
8 -> {9}; 8 -> {9};
subgraph cluster_6 { subgraph cluster_3 {
color=red color=red
10 [label="Enter property" style="filled" fillcolor=red]; 10 [label="Enter property" style="filled" fillcolor=red];
11 [label="Access variable R|<local>/p0|"]; 11 [label="Access variable R|<local>/p0|"];
@@ -54,14 +48,14 @@ digraph secondaryConstructorCfg_kt {
11 -> {12}; 11 -> {12};
12 -> {2} [color=green]; 12 -> {2} [color=green];
subgraph cluster_7 { subgraph cluster_4 {
color=red color=red
13 [label="Enter function getter" style="filled" fillcolor=red]; 13 [label="Enter function getter" style="filled" fillcolor=red];
14 [label="Exit function getter" style="filled" fillcolor=red]; 14 [label="Exit function getter" style="filled" fillcolor=red];
} }
13 -> {14}; 13 -> {14};
subgraph cluster_8 { subgraph cluster_5 {
color=red color=red
15 [label="Enter property" style="filled" fillcolor=red]; 15 [label="Enter property" style="filled" fillcolor=red];
16 [label="Access variable R|<local>/p0|"]; 16 [label="Access variable R|<local>/p0|"];
@@ -73,26 +67,26 @@ digraph secondaryConstructorCfg_kt {
17 -> {18}; 17 -> {18};
18 -> {3} [color=green]; 18 -> {3} [color=green];
subgraph cluster_9 { subgraph cluster_6 {
color=red color=red
19 [label="Enter function getter" style="filled" fillcolor=red]; 19 [label="Enter function getter" style="filled" fillcolor=red];
20 [label="Exit function getter" style="filled" fillcolor=red]; 20 [label="Exit function getter" style="filled" fillcolor=red];
} }
19 -> {20}; 19 -> {20};
subgraph cluster_10 { subgraph cluster_7 {
color=red color=red
21 [label="Enter function setter" style="filled" fillcolor=red]; 21 [label="Enter function setter" style="filled" fillcolor=red];
22 [label="Exit function setter" style="filled" fillcolor=red]; 22 [label="Exit function setter" style="filled" fillcolor=red];
} }
21 -> {22}; 21 -> {22};
subgraph cluster_11 { subgraph cluster_8 {
color=red color=red
23 [label="Enter function <init>" style="filled" fillcolor=red]; 23 [label="Enter function <init>" style="filled" fillcolor=red];
24 [label="Access variable R|<local>/p0|"]; 24 [label="Access variable R|<local>/p0|"];
25 [label="Delegated constructor call: this<R|B|>(...)"]; 25 [label="Delegated constructor call: this<R|B|>(...)"];
subgraph cluster_12 { subgraph cluster_9 {
color=blue color=blue
26 [label="Enter block"]; 26 [label="Enter block"];
27 [label="Access variable R|<local>/p1|"]; 27 [label="Access variable R|<local>/p1|"];
@@ -109,10 +103,10 @@ digraph secondaryConstructorCfg_kt {
28 -> {29}; 28 -> {29};
29 -> {30}; 29 -> {30};
subgraph cluster_13 { subgraph cluster_10 {
color=red color=red
31 [label="Enter init block" style="filled" fillcolor=red]; 31 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_14 { subgraph cluster_11 {
color=blue color=blue
32 [label="Enter block"]; 32 [label="Enter block"];
33 [label="Access variable R|<local>/p0|"]; 33 [label="Access variable R|<local>/p0|"];
@@ -134,4 +128,4 @@ digraph secondaryConstructorCfg_kt {
38 -> {39}; 38 -> {39};
39 -> {4} [color=green]; 39 -> {4} [color=green];
} }
@@ -317,8 +317,6 @@ digraph boundSmartcasts_kt {
subgraph cluster_27 { subgraph cluster_27 {
color=red color=red
115 [label="Enter class D" style="filled" fillcolor=red]; 115 [label="Enter class D" style="filled" fillcolor=red];
subgraph cluster_28 {
color=blue
116 [label="Part of class initialization"]; 116 [label="Part of class initialization"];
117 [label="Exit class D" style="filled" fillcolor=red]; 117 [label="Exit class D" style="filled" fillcolor=red];
} }
@@ -327,7 +325,7 @@ digraph boundSmartcasts_kt {
116 -> {123} [color=green]; 116 -> {123} [color=green];
116 -> {123} [style=dashed]; 116 -> {123} [style=dashed];
subgraph cluster_29 { subgraph cluster_28 {
color=red color=red
118 [label="Enter function <init>" style="filled" fillcolor=red]; 118 [label="Enter function <init>" style="filled" fillcolor=red];
119 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 119 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -336,14 +334,14 @@ digraph boundSmartcasts_kt {
118 -> {119}; 118 -> {119};
119 -> {120}; 119 -> {120};
subgraph cluster_30 { subgraph cluster_29 {
color=red color=red
121 [label="Enter function getter" style="filled" fillcolor=red]; 121 [label="Enter function getter" style="filled" fillcolor=red];
122 [label="Exit function getter" style="filled" fillcolor=red]; 122 [label="Exit function getter" style="filled" fillcolor=red];
} }
121 -> {122}; 121 -> {122};
subgraph cluster_31 { subgraph cluster_30 {
color=red color=red
123 [label="Enter property" style="filled" fillcolor=red]; 123 [label="Enter property" style="filled" fillcolor=red];
124 [label="Access variable R|<local>/any|"]; 124 [label="Access variable R|<local>/any|"];
@@ -353,10 +351,10 @@ digraph boundSmartcasts_kt {
124 -> {125}; 124 -> {125};
125 -> {117} [color=green]; 125 -> {117} [color=green];
subgraph cluster_32 { subgraph cluster_31 {
color=red color=red
126 [label="Enter function baz" style="filled" fillcolor=red]; 126 [label="Enter function baz" style="filled" fillcolor=red];
subgraph cluster_33 { subgraph cluster_32 {
color=blue color=blue
127 [label="Enter block"]; 127 [label="Enter block"];
128 [label="Exit block"]; 128 [label="Exit block"];
@@ -367,10 +365,10 @@ digraph boundSmartcasts_kt {
127 -> {128}; 127 -> {128};
128 -> {129}; 128 -> {129};
subgraph cluster_34 { subgraph cluster_33 {
color=red color=red
130 [label="Enter function test_5" style="filled" fillcolor=red]; 130 [label="Enter function test_5" style="filled" fillcolor=red];
subgraph cluster_35 { subgraph cluster_34 {
color=blue color=blue
131 [label="Enter block"]; 131 [label="Enter block"];
132 [label="Access variable R|<local>/d|"]; 132 [label="Access variable R|<local>/d|"];
@@ -418,10 +416,10 @@ digraph boundSmartcasts_kt {
149 -> {150}; 149 -> {150};
150 -> {151}; 150 -> {151};
subgraph cluster_36 { subgraph cluster_35 {
color=red color=red
152 [label="Enter function test_6" style="filled" fillcolor=red]; 152 [label="Enter function test_6" style="filled" fillcolor=red];
subgraph cluster_37 { subgraph cluster_36 {
color=blue color=blue
153 [label="Enter block"]; 153 [label="Enter block"];
154 [label="Access variable R|<local>/d1|"]; 154 [label="Access variable R|<local>/d1|"];
@@ -458,10 +456,10 @@ digraph boundSmartcasts_kt {
166 -> {167}; 166 -> {167};
167 -> {168}; 167 -> {168};
subgraph cluster_38 { subgraph cluster_37 {
color=red color=red
169 [label="Enter function test_7" style="filled" fillcolor=red]; 169 [label="Enter function test_7" style="filled" fillcolor=red];
subgraph cluster_39 { subgraph cluster_38 {
color=blue color=blue
170 [label="Enter block"]; 170 [label="Enter block"];
171 [label="Access variable R|<local>/d1|"]; 171 [label="Access variable R|<local>/d1|"];
@@ -508,4 +506,4 @@ digraph boundSmartcasts_kt {
188 -> {189}; 188 -> {189};
189 -> {190}; 189 -> {190};
} }
@@ -6,8 +6,6 @@ digraph boundSmartcastsInBranches_kt {
subgraph cluster_0 { subgraph cluster_0 {
color=red color=red
0 [label="Enter class A" style="filled" fillcolor=red]; 0 [label="Enter class A" style="filled" fillcolor=red];
subgraph cluster_1 {
color=blue
1 [label="Part of class initialization"]; 1 [label="Part of class initialization"];
2 [label="Exit class A" style="filled" fillcolor=red]; 2 [label="Exit class A" style="filled" fillcolor=red];
} }
@@ -16,7 +14,7 @@ digraph boundSmartcastsInBranches_kt {
1 -> {8} [color=green]; 1 -> {8} [color=green];
1 -> {8} [style=dashed]; 1 -> {8} [style=dashed];
subgraph cluster_2 { subgraph cluster_1 {
color=red color=red
3 [label="Enter function <init>" style="filled" fillcolor=red]; 3 [label="Enter function <init>" style="filled" fillcolor=red];
4 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 4 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -25,14 +23,14 @@ digraph boundSmartcastsInBranches_kt {
3 -> {4}; 3 -> {4};
4 -> {5}; 4 -> {5};
subgraph cluster_3 { subgraph cluster_2 {
color=red color=red
6 [label="Enter function getter" style="filled" fillcolor=red]; 6 [label="Enter function getter" style="filled" fillcolor=red];
7 [label="Exit function getter" style="filled" fillcolor=red]; 7 [label="Exit function getter" style="filled" fillcolor=red];
} }
6 -> {7}; 6 -> {7};
subgraph cluster_4 { subgraph cluster_3 {
color=red color=red
8 [label="Enter property" style="filled" fillcolor=red]; 8 [label="Enter property" style="filled" fillcolor=red];
9 [label="Const: String()"]; 9 [label="Const: String()"];
@@ -42,10 +40,10 @@ digraph boundSmartcastsInBranches_kt {
9 -> {10}; 9 -> {10};
10 -> {2} [color=green]; 10 -> {2} [color=green];
subgraph cluster_5 { subgraph cluster_4 {
color=red color=red
11 [label="Enter function test_0" style="filled" fillcolor=red]; 11 [label="Enter function test_0" style="filled" fillcolor=red];
subgraph cluster_6 { subgraph cluster_5 {
color=blue color=blue
12 [label="Enter block"]; 12 [label="Enter block"];
13 [label="Const: Null(null)"]; 13 [label="Const: Null(null)"];
@@ -53,29 +51,29 @@ digraph boundSmartcastsInBranches_kt {
15 [label="Access variable R|<local>/list|"]; 15 [label="Access variable R|<local>/list|"];
16 [label="Function call: R|<local>/list|.R|FakeOverride<kotlin/collections/List.iterator: R|kotlin/collections/Iterator<A>|>|()"]; 16 [label="Function call: R|<local>/list|.R|FakeOverride<kotlin/collections/List.iterator: R|kotlin/collections/Iterator<A>|>|()"];
17 [label="Variable declaration: lval <iterator>: R|kotlin/collections/Iterator<A>|"]; 17 [label="Variable declaration: lval <iterator>: R|kotlin/collections/Iterator<A>|"];
subgraph cluster_7 { subgraph cluster_6 {
color=blue color=blue
18 [label="Enter while loop"]; 18 [label="Enter while loop"];
subgraph cluster_8 { subgraph cluster_7 {
color=blue color=blue
19 [label="Enter loop condition"]; 19 [label="Enter loop condition"];
20 [label="Access variable R|<local>/<iterator>|"]; 20 [label="Access variable R|<local>/<iterator>|"];
21 [label="Function call: R|<local>/<iterator>|.R|kotlin/collections/Iterator.hasNext|()"]; 21 [label="Function call: R|<local>/<iterator>|.R|kotlin/collections/Iterator.hasNext|()"];
22 [label="Exit loop condition"]; 22 [label="Exit loop condition"];
} }
subgraph cluster_9 { subgraph cluster_8 {
color=blue color=blue
23 [label="Enter loop block"]; 23 [label="Enter loop block"];
subgraph cluster_10 { subgraph cluster_9 {
color=blue color=blue
24 [label="Enter block"]; 24 [label="Enter block"];
25 [label="Access variable R|<local>/<iterator>|"]; 25 [label="Access variable R|<local>/<iterator>|"];
26 [label="Function call: R|<local>/<iterator>|.R|FakeOverride<kotlin/collections/Iterator.next: R|A|>|()"]; 26 [label="Function call: R|<local>/<iterator>|.R|FakeOverride<kotlin/collections/Iterator.next: R|A|>|()"];
27 [label="Variable declaration: lval a: R|A|"]; 27 [label="Variable declaration: lval a: R|A|"];
subgraph cluster_11 { subgraph cluster_10 {
color=blue color=blue
28 [label="Enter when"]; 28 [label="Enter when"];
subgraph cluster_12 { subgraph cluster_11 {
color=blue color=blue
29 [label="Enter when branch condition "]; 29 [label="Enter when branch condition "];
30 [label="Access variable R|<local>/goodA|"]; 30 [label="Access variable R|<local>/goodA|"];
@@ -85,7 +83,7 @@ digraph boundSmartcastsInBranches_kt {
} }
34 [label="Synthetic else branch"]; 34 [label="Synthetic else branch"];
35 [label="Enter when branch result"]; 35 [label="Enter when branch result"];
subgraph cluster_13 { subgraph cluster_12 {
color=blue color=blue
36 [label="Enter block"]; 36 [label="Enter block"];
37 [label="Access variable R|<local>/a|"]; 37 [label="Access variable R|<local>/a|"];
@@ -150,29 +148,29 @@ digraph boundSmartcastsInBranches_kt {
48 -> {49}; 48 -> {49};
49 -> {50}; 49 -> {50};
subgraph cluster_14 { subgraph cluster_13 {
color=red color=red
51 [label="Enter function test_1" style="filled" fillcolor=red]; 51 [label="Enter function test_1" style="filled" fillcolor=red];
subgraph cluster_15 { subgraph cluster_14 {
color=blue color=blue
52 [label="Enter block"]; 52 [label="Enter block"];
53 [label="Variable declaration: lval x: R|kotlin/Any|"]; 53 [label="Variable declaration: lval x: R|kotlin/Any|"];
subgraph cluster_16 { subgraph cluster_15 {
color=blue color=blue
54 [label="Enter when"]; 54 [label="Enter when"];
subgraph cluster_17 { subgraph cluster_16 {
color=blue color=blue
55 [label="Enter when branch condition "]; 55 [label="Enter when branch condition "];
56 [label="Access variable R|<local>/b|"]; 56 [label="Access variable R|<local>/b|"];
57 [label="Exit when branch condition"]; 57 [label="Exit when branch condition"];
} }
subgraph cluster_18 { subgraph cluster_17 {
color=blue color=blue
58 [label="Enter when branch condition else"]; 58 [label="Enter when branch condition else"];
59 [label="Exit when branch condition"]; 59 [label="Exit when branch condition"];
} }
60 [label="Enter when branch result"]; 60 [label="Enter when branch result"];
subgraph cluster_19 { subgraph cluster_18 {
color=blue color=blue
61 [label="Enter block"]; 61 [label="Enter block"];
62 [label="Access variable R|<local>/a|"]; 62 [label="Access variable R|<local>/a|"];
@@ -181,7 +179,7 @@ digraph boundSmartcastsInBranches_kt {
} }
65 [label="Exit when branch result"]; 65 [label="Exit when branch result"];
66 [label="Enter when branch result"]; 66 [label="Enter when branch result"];
subgraph cluster_20 { subgraph cluster_19 {
color=blue color=blue
67 [label="Enter block"]; 67 [label="Enter block"];
68 [label="Function call: R|/A.A|()"]; 68 [label="Function call: R|/A.A|()"];
@@ -223,29 +221,29 @@ digraph boundSmartcastsInBranches_kt {
74 -> {75}; 74 -> {75};
75 -> {76}; 75 -> {76};
subgraph cluster_21 { subgraph cluster_20 {
color=red color=red
77 [label="Enter function test_2" style="filled" fillcolor=red]; 77 [label="Enter function test_2" style="filled" fillcolor=red];
subgraph cluster_22 { subgraph cluster_21 {
color=blue color=blue
78 [label="Enter block"]; 78 [label="Enter block"];
79 [label="Variable declaration: lval x: R|kotlin/Any|"]; 79 [label="Variable declaration: lval x: R|kotlin/Any|"];
subgraph cluster_23 { subgraph cluster_22 {
color=blue color=blue
80 [label="Enter when"]; 80 [label="Enter when"];
subgraph cluster_24 { subgraph cluster_23 {
color=blue color=blue
81 [label="Enter when branch condition "]; 81 [label="Enter when branch condition "];
82 [label="Access variable R|<local>/b|"]; 82 [label="Access variable R|<local>/b|"];
83 [label="Exit when branch condition"]; 83 [label="Exit when branch condition"];
} }
subgraph cluster_25 { subgraph cluster_24 {
color=blue color=blue
84 [label="Enter when branch condition else"]; 84 [label="Enter when branch condition else"];
85 [label="Exit when branch condition"]; 85 [label="Exit when branch condition"];
} }
86 [label="Enter when branch result"]; 86 [label="Enter when branch result"];
subgraph cluster_26 { subgraph cluster_25 {
color=blue color=blue
87 [label="Enter block"]; 87 [label="Enter block"];
88 [label="Access variable R|<local>/a|"]; 88 [label="Access variable R|<local>/a|"];
@@ -256,7 +254,7 @@ digraph boundSmartcastsInBranches_kt {
} }
93 [label="Exit when branch result"]; 93 [label="Exit when branch result"];
94 [label="Enter when branch result"]; 94 [label="Enter when branch result"];
subgraph cluster_27 { subgraph cluster_26 {
color=blue color=blue
95 [label="Enter block"]; 95 [label="Enter block"];
96 [label="Function call: R|/A.A|()"]; 96 [label="Function call: R|/A.A|()"];
@@ -300,29 +298,29 @@ digraph boundSmartcastsInBranches_kt {
102 -> {103}; 102 -> {103};
103 -> {104}; 103 -> {104};
subgraph cluster_28 { subgraph cluster_27 {
color=red color=red
105 [label="Enter function test_3" style="filled" fillcolor=red]; 105 [label="Enter function test_3" style="filled" fillcolor=red];
subgraph cluster_29 { subgraph cluster_28 {
color=blue color=blue
106 [label="Enter block"]; 106 [label="Enter block"];
107 [label="Variable declaration: lval x: R|kotlin/Any|"]; 107 [label="Variable declaration: lval x: R|kotlin/Any|"];
subgraph cluster_30 { subgraph cluster_29 {
color=blue color=blue
108 [label="Enter when"]; 108 [label="Enter when"];
subgraph cluster_31 { subgraph cluster_30 {
color=blue color=blue
109 [label="Enter when branch condition "]; 109 [label="Enter when branch condition "];
110 [label="Access variable R|<local>/b|"]; 110 [label="Access variable R|<local>/b|"];
111 [label="Exit when branch condition"]; 111 [label="Exit when branch condition"];
} }
subgraph cluster_32 { subgraph cluster_31 {
color=blue color=blue
112 [label="Enter when branch condition else"]; 112 [label="Enter when branch condition else"];
113 [label="Exit when branch condition"]; 113 [label="Exit when branch condition"];
} }
114 [label="Enter when branch result"]; 114 [label="Enter when branch result"];
subgraph cluster_33 { subgraph cluster_32 {
color=blue color=blue
115 [label="Enter block"]; 115 [label="Enter block"];
116 [label="Access variable R|<local>/a|"]; 116 [label="Access variable R|<local>/a|"];
@@ -333,7 +331,7 @@ digraph boundSmartcastsInBranches_kt {
} }
121 [label="Exit when branch result"]; 121 [label="Exit when branch result"];
122 [label="Enter when branch result"]; 122 [label="Enter when branch result"];
subgraph cluster_34 { subgraph cluster_33 {
color=blue color=blue
123 [label="Enter block"]; 123 [label="Enter block"];
124 [label="Function call: R|/A.A|()"]; 124 [label="Function call: R|/A.A|()"];
@@ -377,29 +375,29 @@ digraph boundSmartcastsInBranches_kt {
130 -> {131}; 130 -> {131};
131 -> {132}; 131 -> {132};
subgraph cluster_35 { subgraph cluster_34 {
color=red color=red
133 [label="Enter function test_4" style="filled" fillcolor=red]; 133 [label="Enter function test_4" style="filled" fillcolor=red];
subgraph cluster_36 { subgraph cluster_35 {
color=blue color=blue
134 [label="Enter block"]; 134 [label="Enter block"];
135 [label="Variable declaration: lval x: R|kotlin/Any|"]; 135 [label="Variable declaration: lval x: R|kotlin/Any|"];
subgraph cluster_37 { subgraph cluster_36 {
color=blue color=blue
136 [label="Enter when"]; 136 [label="Enter when"];
subgraph cluster_38 { subgraph cluster_37 {
color=blue color=blue
137 [label="Enter when branch condition "]; 137 [label="Enter when branch condition "];
138 [label="Access variable R|<local>/b|"]; 138 [label="Access variable R|<local>/b|"];
139 [label="Exit when branch condition"]; 139 [label="Exit when branch condition"];
} }
subgraph cluster_39 { subgraph cluster_38 {
color=blue color=blue
140 [label="Enter when branch condition else"]; 140 [label="Enter when branch condition else"];
141 [label="Exit when branch condition"]; 141 [label="Exit when branch condition"];
} }
142 [label="Enter when branch result"]; 142 [label="Enter when branch result"];
subgraph cluster_40 { subgraph cluster_39 {
color=blue color=blue
143 [label="Enter block"]; 143 [label="Enter block"];
144 [label="Access variable R|<local>/a|"]; 144 [label="Access variable R|<local>/a|"];
@@ -408,7 +406,7 @@ digraph boundSmartcastsInBranches_kt {
} }
147 [label="Exit when branch result"]; 147 [label="Exit when branch result"];
148 [label="Enter when branch result"]; 148 [label="Enter when branch result"];
subgraph cluster_41 { subgraph cluster_40 {
color=blue color=blue
149 [label="Enter block"]; 149 [label="Enter block"];
150 [label="Access variable R|<local>/a|"]; 150 [label="Access variable R|<local>/a|"];
@@ -458,29 +456,29 @@ digraph boundSmartcastsInBranches_kt {
160 -> {161}; 160 -> {161};
161 -> {162}; 161 -> {162};
subgraph cluster_42 { subgraph cluster_41 {
color=red color=red
163 [label="Enter function test_5" style="filled" fillcolor=red]; 163 [label="Enter function test_5" style="filled" fillcolor=red];
subgraph cluster_43 { subgraph cluster_42 {
color=blue color=blue
164 [label="Enter block"]; 164 [label="Enter block"];
165 [label="Variable declaration: lval x: R|kotlin/Any|"]; 165 [label="Variable declaration: lval x: R|kotlin/Any|"];
subgraph cluster_44 { subgraph cluster_43 {
color=blue color=blue
166 [label="Enter when"]; 166 [label="Enter when"];
subgraph cluster_45 { subgraph cluster_44 {
color=blue color=blue
167 [label="Enter when branch condition "]; 167 [label="Enter when branch condition "];
168 [label="Access variable R|<local>/b|"]; 168 [label="Access variable R|<local>/b|"];
169 [label="Exit when branch condition"]; 169 [label="Exit when branch condition"];
} }
subgraph cluster_46 { subgraph cluster_45 {
color=blue color=blue
170 [label="Enter when branch condition else"]; 170 [label="Enter when branch condition else"];
171 [label="Exit when branch condition"]; 171 [label="Exit when branch condition"];
} }
172 [label="Enter when branch result"]; 172 [label="Enter when branch result"];
subgraph cluster_47 { subgraph cluster_46 {
color=blue color=blue
173 [label="Enter block"]; 173 [label="Enter block"];
174 [label="Access variable R|<local>/a|"]; 174 [label="Access variable R|<local>/a|"];
@@ -489,7 +487,7 @@ digraph boundSmartcastsInBranches_kt {
} }
177 [label="Exit when branch result"]; 177 [label="Exit when branch result"];
178 [label="Enter when branch result"]; 178 [label="Enter when branch result"];
subgraph cluster_48 { subgraph cluster_47 {
color=blue color=blue
179 [label="Enter block"]; 179 [label="Enter block"];
180 [label="Access variable R|<local>/a|"]; 180 [label="Access variable R|<local>/a|"];
@@ -539,10 +537,10 @@ digraph boundSmartcastsInBranches_kt {
190 -> {191}; 190 -> {191};
191 -> {192}; 191 -> {192};
subgraph cluster_49 { subgraph cluster_48 {
color=red color=red
193 [label="Enter function test_6" style="filled" fillcolor=red]; 193 [label="Enter function test_6" style="filled" fillcolor=red];
subgraph cluster_50 { subgraph cluster_49 {
color=blue color=blue
194 [label="Enter block"]; 194 [label="Enter block"];
195 [label="Variable declaration: lval x: R|kotlin/Any|"]; 195 [label="Variable declaration: lval x: R|kotlin/Any|"];
@@ -563,10 +561,10 @@ digraph boundSmartcastsInBranches_kt {
199 -> {200}; 199 -> {200};
200 -> {201}; 200 -> {201};
subgraph cluster_51 { subgraph cluster_50 {
color=red color=red
202 [label="Enter function test_7" style="filled" fillcolor=red]; 202 [label="Enter function test_7" style="filled" fillcolor=red];
subgraph cluster_52 { subgraph cluster_51 {
color=blue color=blue
203 [label="Enter block"]; 203 [label="Enter block"];
204 [label="Const: Null(null)"]; 204 [label="Const: Null(null)"];
@@ -575,10 +573,10 @@ digraph boundSmartcastsInBranches_kt {
207 [label="Variable declaration: lvar y: R|kotlin/String?|"]; 207 [label="Variable declaration: lvar y: R|kotlin/String?|"];
208 [label="Access variable R|<local>/y|"]; 208 [label="Access variable R|<local>/y|"];
209 [label="Variable declaration: lval x: R|kotlin/String?|"]; 209 [label="Variable declaration: lval x: R|kotlin/String?|"];
subgraph cluster_53 { subgraph cluster_52 {
color=blue color=blue
210 [label="Enter when"]; 210 [label="Enter when"];
subgraph cluster_54 { subgraph cluster_53 {
color=blue color=blue
211 [label="Enter when branch condition "]; 211 [label="Enter when branch condition "];
212 [label="Access variable R|<local>/x|"]; 212 [label="Access variable R|<local>/x|"];
@@ -588,7 +586,7 @@ digraph boundSmartcastsInBranches_kt {
} }
216 [label="Synthetic else branch"]; 216 [label="Synthetic else branch"];
217 [label="Enter when branch result"]; 217 [label="Enter when branch result"];
subgraph cluster_55 { subgraph cluster_54 {
color=blue color=blue
218 [label="Enter block"]; 218 [label="Enter block"];
219 [label="Access variable R|<local>/x|"]; 219 [label="Access variable R|<local>/x|"];
@@ -602,10 +600,10 @@ digraph boundSmartcastsInBranches_kt {
226 [label="Exit when branch result"]; 226 [label="Exit when branch result"];
227 [label="Exit when"]; 227 [label="Exit when"];
} }
subgraph cluster_56 { subgraph cluster_55 {
color=blue color=blue
228 [label="Enter when"]; 228 [label="Enter when"];
subgraph cluster_57 { subgraph cluster_56 {
color=blue color=blue
229 [label="Enter when branch condition "]; 229 [label="Enter when branch condition "];
230 [label="Access variable R|<local>/y|"]; 230 [label="Access variable R|<local>/y|"];
@@ -615,7 +613,7 @@ digraph boundSmartcastsInBranches_kt {
} }
234 [label="Synthetic else branch"]; 234 [label="Synthetic else branch"];
235 [label="Enter when branch result"]; 235 [label="Enter when branch result"];
subgraph cluster_58 { subgraph cluster_57 {
color=blue color=blue
236 [label="Enter block"]; 236 [label="Enter block"];
237 [label="Access variable R|<local>/x|"]; 237 [label="Access variable R|<local>/x|"];
@@ -629,10 +627,10 @@ digraph boundSmartcastsInBranches_kt {
244 [label="Exit when branch result"]; 244 [label="Exit when branch result"];
245 [label="Exit when"]; 245 [label="Exit when"];
} }
subgraph cluster_59 { subgraph cluster_58 {
color=blue color=blue
246 [label="Enter when"]; 246 [label="Enter when"];
subgraph cluster_60 { subgraph cluster_59 {
color=blue color=blue
247 [label="Enter when branch condition "]; 247 [label="Enter when branch condition "];
248 [label="Access variable R|<local>/z|"]; 248 [label="Access variable R|<local>/z|"];
@@ -642,7 +640,7 @@ digraph boundSmartcastsInBranches_kt {
} }
252 [label="Synthetic else branch"]; 252 [label="Synthetic else branch"];
253 [label="Enter when branch result"]; 253 [label="Enter when branch result"];
subgraph cluster_61 { subgraph cluster_60 {
color=blue color=blue
254 [label="Enter block"]; 254 [label="Enter block"];
255 [label="Access variable R|<local>/x|"]; 255 [label="Access variable R|<local>/x|"];
@@ -658,10 +656,10 @@ digraph boundSmartcastsInBranches_kt {
} }
264 [label="Const: Null(null)"]; 264 [label="Const: Null(null)"];
265 [label="Assignment: R|<local>/y|"]; 265 [label="Assignment: R|<local>/y|"];
subgraph cluster_62 { subgraph cluster_61 {
color=blue color=blue
266 [label="Enter when"]; 266 [label="Enter when"];
subgraph cluster_63 { subgraph cluster_62 {
color=blue color=blue
267 [label="Enter when branch condition "]; 267 [label="Enter when branch condition "];
268 [label="Access variable R|<local>/x|"]; 268 [label="Access variable R|<local>/x|"];
@@ -671,7 +669,7 @@ digraph boundSmartcastsInBranches_kt {
} }
272 [label="Synthetic else branch"]; 272 [label="Synthetic else branch"];
273 [label="Enter when branch result"]; 273 [label="Enter when branch result"];
subgraph cluster_64 { subgraph cluster_63 {
color=blue color=blue
274 [label="Enter block"]; 274 [label="Enter block"];
275 [label="Access variable R|<local>/x|"]; 275 [label="Access variable R|<local>/x|"];
@@ -685,10 +683,10 @@ digraph boundSmartcastsInBranches_kt {
282 [label="Exit when branch result"]; 282 [label="Exit when branch result"];
283 [label="Exit when"]; 283 [label="Exit when"];
} }
subgraph cluster_65 { subgraph cluster_64 {
color=blue color=blue
284 [label="Enter when"]; 284 [label="Enter when"];
subgraph cluster_66 { subgraph cluster_65 {
color=blue color=blue
285 [label="Enter when branch condition "]; 285 [label="Enter when branch condition "];
286 [label="Access variable R|<local>/y|"]; 286 [label="Access variable R|<local>/y|"];
@@ -698,7 +696,7 @@ digraph boundSmartcastsInBranches_kt {
} }
290 [label="Synthetic else branch"]; 290 [label="Synthetic else branch"];
291 [label="Enter when branch result"]; 291 [label="Enter when branch result"];
subgraph cluster_67 { subgraph cluster_66 {
color=blue color=blue
292 [label="Enter block"]; 292 [label="Enter block"];
293 [label="Access variable R|<local>/x|"]; 293 [label="Access variable R|<local>/x|"];
@@ -712,10 +710,10 @@ digraph boundSmartcastsInBranches_kt {
300 [label="Exit when branch result"]; 300 [label="Exit when branch result"];
301 [label="Exit when"]; 301 [label="Exit when"];
} }
subgraph cluster_68 { subgraph cluster_67 {
color=blue color=blue
302 [label="Enter when"]; 302 [label="Enter when"];
subgraph cluster_69 { subgraph cluster_68 {
color=blue color=blue
303 [label="Enter when branch condition "]; 303 [label="Enter when branch condition "];
304 [label="Access variable R|<local>/z|"]; 304 [label="Access variable R|<local>/z|"];
@@ -725,7 +723,7 @@ digraph boundSmartcastsInBranches_kt {
} }
308 [label="Synthetic else branch"]; 308 [label="Synthetic else branch"];
309 [label="Enter when branch result"]; 309 [label="Enter when branch result"];
subgraph cluster_70 { subgraph cluster_69 {
color=blue color=blue
310 [label="Enter block"]; 310 [label="Enter block"];
311 [label="Access variable R|<local>/x|"]; 311 [label="Access variable R|<local>/x|"];
@@ -863,4 +861,4 @@ digraph boundSmartcastsInBranches_kt {
319 -> {320}; 319 -> {320};
320 -> {321}; 320 -> {321};
} }
@@ -22,8 +22,6 @@ digraph functionCallBound_kt {
subgraph cluster_2 { subgraph cluster_2 {
color=red color=red
5 [label="Enter class Sub" style="filled" fillcolor=red]; 5 [label="Enter class Sub" style="filled" fillcolor=red];
subgraph cluster_3 {
color=blue
6 [label="Part of class initialization"]; 6 [label="Part of class initialization"];
7 [label="Exit class Sub" style="filled" fillcolor=red]; 7 [label="Exit class Sub" style="filled" fillcolor=red];
} }
@@ -32,7 +30,7 @@ digraph functionCallBound_kt {
6 -> {13} [color=green]; 6 -> {13} [color=green];
6 -> {13} [style=dashed]; 6 -> {13} [style=dashed];
subgraph cluster_4 { subgraph cluster_3 {
color=red color=red
8 [label="Enter function <init>" style="filled" fillcolor=red]; 8 [label="Enter function <init>" style="filled" fillcolor=red];
9 [label="Delegated constructor call: super<R|Base|>()"]; 9 [label="Delegated constructor call: super<R|Base|>()"];
@@ -41,14 +39,14 @@ digraph functionCallBound_kt {
8 -> {9}; 8 -> {9};
9 -> {10}; 9 -> {10};
subgraph cluster_5 { subgraph cluster_4 {
color=red color=red
11 [label="Enter function getter" style="filled" fillcolor=red]; 11 [label="Enter function getter" style="filled" fillcolor=red];
12 [label="Exit function getter" style="filled" fillcolor=red]; 12 [label="Exit function getter" style="filled" fillcolor=red];
} }
11 -> {12}; 11 -> {12};
subgraph cluster_6 { subgraph cluster_5 {
color=red color=red
13 [label="Enter property" style="filled" fillcolor=red]; 13 [label="Enter property" style="filled" fillcolor=red];
14 [label="Access variable R|<local>/data|"]; 14 [label="Access variable R|<local>/data|"];
@@ -58,10 +56,10 @@ digraph functionCallBound_kt {
14 -> {15}; 14 -> {15};
15 -> {7} [color=green]; 15 -> {7} [color=green];
subgraph cluster_7 { subgraph cluster_6 {
color=red color=red
16 [label="Enter function isOk" style="filled" fillcolor=red]; 16 [label="Enter function isOk" style="filled" fillcolor=red];
subgraph cluster_8 { subgraph cluster_7 {
color=blue color=blue
17 [label="Enter block"]; 17 [label="Enter block"];
18 [label="Const: Boolean(true)"]; 18 [label="Const: Boolean(true)"];
@@ -79,16 +77,16 @@ digraph functionCallBound_kt {
20 -> {21} [style=dotted]; 20 -> {21} [style=dotted];
21 -> {22} [style=dotted]; 21 -> {22} [style=dotted];
subgraph cluster_9 { subgraph cluster_8 {
color=red color=red
23 [label="Enter function check" style="filled" fillcolor=red]; 23 [label="Enter function check" style="filled" fillcolor=red];
subgraph cluster_10 { subgraph cluster_9 {
color=blue color=blue
24 [label="Enter block"]; 24 [label="Enter block"];
subgraph cluster_11 { subgraph cluster_10 {
color=blue color=blue
25 [label="Enter when"]; 25 [label="Enter when"];
subgraph cluster_12 { subgraph cluster_11 {
color=blue color=blue
26 [label="Enter when branch condition "]; 26 [label="Enter when branch condition "];
27 [label="Access variable R|<local>/base|"]; 27 [label="Access variable R|<local>/base|"];
@@ -100,13 +98,13 @@ digraph functionCallBound_kt {
33 [label="Equality operator =="]; 33 [label="Equality operator =="];
34 [label="Exit when branch condition"]; 34 [label="Exit when branch condition"];
} }
subgraph cluster_13 { subgraph cluster_12 {
color=blue color=blue
35 [label="Enter when branch condition else"]; 35 [label="Enter when branch condition else"];
36 [label="Exit when branch condition"]; 36 [label="Exit when branch condition"];
} }
37 [label="Enter when branch result"]; 37 [label="Enter when branch result"];
subgraph cluster_14 { subgraph cluster_13 {
color=blue color=blue
38 [label="Enter block"]; 38 [label="Enter block"];
39 [label="Access variable R|<local>/base|"]; 39 [label="Access variable R|<local>/base|"];
@@ -114,7 +112,7 @@ digraph functionCallBound_kt {
} }
41 [label="Exit when branch result"]; 41 [label="Exit when branch result"];
42 [label="Enter when branch result"]; 42 [label="Enter when branch result"];
subgraph cluster_15 { subgraph cluster_14 {
color=blue color=blue
43 [label="Enter block"]; 43 [label="Enter block"];
44 [label="Access variable R|<local>/base|"]; 44 [label="Access variable R|<local>/base|"];
@@ -169,4 +167,4 @@ digraph functionCallBound_kt {
50 -> {51} [style=dotted]; 50 -> {51} [style=dotted];
51 -> {52} [style=dotted]; 51 -> {52} [style=dotted];
} }
@@ -22,8 +22,6 @@ digraph lambdaInWhenBranch_kt {
subgraph cluster_2 { subgraph cluster_2 {
color=red color=red
5 [label="Enter class SubClass1" style="filled" fillcolor=red]; 5 [label="Enter class SubClass1" style="filled" fillcolor=red];
subgraph cluster_3 {
color=blue
6 [label="Part of class initialization"]; 6 [label="Part of class initialization"];
7 [label="Exit class SubClass1" style="filled" fillcolor=red]; 7 [label="Exit class SubClass1" style="filled" fillcolor=red];
} }
@@ -32,7 +30,7 @@ digraph lambdaInWhenBranch_kt {
6 -> {13} [color=green]; 6 -> {13} [color=green];
6 -> {13} [style=dashed]; 6 -> {13} [style=dashed];
subgraph cluster_4 { subgraph cluster_3 {
color=red color=red
8 [label="Enter function <init>" style="filled" fillcolor=red]; 8 [label="Enter function <init>" style="filled" fillcolor=red];
9 [label="Delegated constructor call: super<R|Sealed|>()"]; 9 [label="Delegated constructor call: super<R|Sealed|>()"];
@@ -41,14 +39,14 @@ digraph lambdaInWhenBranch_kt {
8 -> {9}; 8 -> {9};
9 -> {10}; 9 -> {10};
subgraph cluster_5 { subgraph cluster_4 {
color=red color=red
11 [label="Enter function getter" style="filled" fillcolor=red]; 11 [label="Enter function getter" style="filled" fillcolor=red];
12 [label="Exit function getter" style="filled" fillcolor=red]; 12 [label="Exit function getter" style="filled" fillcolor=red];
} }
11 -> {12}; 11 -> {12};
subgraph cluster_6 { subgraph cluster_5 {
color=red color=red
13 [label="Enter property" style="filled" fillcolor=red]; 13 [label="Enter property" style="filled" fillcolor=red];
14 [label="Access variable R|<local>/t|"]; 14 [label="Access variable R|<local>/t|"];
@@ -58,17 +56,17 @@ digraph lambdaInWhenBranch_kt {
14 -> {15}; 14 -> {15};
15 -> {7} [color=green]; 15 -> {7} [color=green];
subgraph cluster_7 { subgraph cluster_6 {
color=red color=red
16 [label="Enter function component1" style="filled" fillcolor=red]; 16 [label="Enter function component1" style="filled" fillcolor=red];
17 [label="Exit function component1" style="filled" fillcolor=red]; 17 [label="Exit function component1" style="filled" fillcolor=red];
} }
16 -> {17}; 16 -> {17};
subgraph cluster_8 { subgraph cluster_7 {
color=red color=red
18 [label="Enter function copy" style="filled" fillcolor=red]; 18 [label="Enter function copy" style="filled" fillcolor=red];
subgraph cluster_9 { subgraph cluster_8 {
color=blue color=blue
20 [label="Enter default value of t" style="filled" fillcolor=red]; 20 [label="Enter default value of t" style="filled" fillcolor=red];
21 [label="Access variable R|/SubClass1.t|"]; 21 [label="Access variable R|/SubClass1.t|"];
@@ -81,14 +79,14 @@ digraph lambdaInWhenBranch_kt {
20 -> {20} [style=dashed]; 20 -> {20} [style=dashed];
21 -> {22}; 21 -> {22};
subgraph cluster_10 { subgraph cluster_9 {
color=red color=red
23 [label="Enter class SubClass2" style="filled" fillcolor=red]; 23 [label="Enter class SubClass2" style="filled" fillcolor=red];
24 [label="Exit class SubClass2" style="filled" fillcolor=red]; 24 [label="Exit class SubClass2" style="filled" fillcolor=red];
} }
23 -> {24} [color=green]; 23 -> {24} [color=green];
subgraph cluster_11 { subgraph cluster_10 {
color=red color=red
25 [label="Enter function <init>" style="filled" fillcolor=red]; 25 [label="Enter function <init>" style="filled" fillcolor=red];
26 [label="Delegated constructor call: super<R|Sealed|>()"]; 26 [label="Delegated constructor call: super<R|Sealed|>()"];
@@ -97,37 +95,37 @@ digraph lambdaInWhenBranch_kt {
25 -> {26}; 25 -> {26};
26 -> {27}; 26 -> {27};
subgraph cluster_12 { subgraph cluster_11 {
color=red color=red
28 [label="Enter function copy" style="filled" fillcolor=red]; 28 [label="Enter function copy" style="filled" fillcolor=red];
29 [label="Exit function copy" style="filled" fillcolor=red]; 29 [label="Exit function copy" style="filled" fillcolor=red];
} }
28 -> {29}; 28 -> {29};
subgraph cluster_13 { subgraph cluster_12 {
color=red color=red
30 [label="Enter function foo" style="filled" fillcolor=red]; 30 [label="Enter function foo" style="filled" fillcolor=red];
subgraph cluster_14 { subgraph cluster_13 {
color=blue color=blue
31 [label="Enter block"]; 31 [label="Enter block"];
subgraph cluster_15 { subgraph cluster_14 {
color=blue color=blue
32 [label="Enter when"]; 32 [label="Enter when"];
33 [label="Access variable R|<local>/p|"]; 33 [label="Access variable R|<local>/p|"];
subgraph cluster_16 { subgraph cluster_15 {
color=blue color=blue
34 [label="Enter when branch condition "]; 34 [label="Enter when branch condition "];
35 [label="Type operator: ($subj$ is R|SubClass1|)"]; 35 [label="Type operator: ($subj$ is R|SubClass1|)"];
36 [label="Exit when branch condition"]; 36 [label="Exit when branch condition"];
} }
subgraph cluster_17 { subgraph cluster_16 {
color=blue color=blue
37 [label="Enter when branch condition "]; 37 [label="Enter when branch condition "];
38 [label="Type operator: ($subj$ is R|SubClass2|)"]; 38 [label="Type operator: ($subj$ is R|SubClass2|)"];
39 [label="Exit when branch condition"]; 39 [label="Exit when branch condition"];
} }
40 [label="Enter when branch result"]; 40 [label="Enter when branch result"];
subgraph cluster_18 { subgraph cluster_17 {
color=blue color=blue
41 [label="Enter block"]; 41 [label="Enter block"];
42 [label="Const: String()"]; 42 [label="Const: String()"];
@@ -135,15 +133,15 @@ digraph lambdaInWhenBranch_kt {
} }
44 [label="Exit when branch result"]; 44 [label="Exit when branch result"];
45 [label="Enter when branch result"]; 45 [label="Enter when branch result"];
subgraph cluster_19 { subgraph cluster_18 {
color=blue color=blue
46 [label="Enter block"]; 46 [label="Enter block"];
47 [label="Const: String()"]; 47 [label="Const: String()"];
48 [label="Postponed enter to lambda"]; 48 [label="Postponed enter to lambda"];
subgraph cluster_20 { subgraph cluster_19 {
color=blue color=blue
79 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 79 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_21 { subgraph cluster_20 {
color=blue color=blue
80 [label="Enter block"]; 80 [label="Enter block"];
81 [label="Access variable R|<local>/it|"]; 81 [label="Access variable R|<local>/it|"];
@@ -160,24 +158,24 @@ digraph lambdaInWhenBranch_kt {
} }
54 [label="Access variable R|<local>/p|"]; 54 [label="Access variable R|<local>/p|"];
55 [label="Access variable <Unresolved name: t>#"]; 55 [label="Access variable <Unresolved name: t>#"];
subgraph cluster_22 { subgraph cluster_21 {
color=blue color=blue
56 [label="Enter when"]; 56 [label="Enter when"];
57 [label="Access variable R|<local>/p|"]; 57 [label="Access variable R|<local>/p|"];
subgraph cluster_23 { subgraph cluster_22 {
color=blue color=blue
58 [label="Enter when branch condition "]; 58 [label="Enter when branch condition "];
59 [label="Type operator: ($subj$ is R|SubClass1|)"]; 59 [label="Type operator: ($subj$ is R|SubClass1|)"];
60 [label="Exit when branch condition"]; 60 [label="Exit when branch condition"];
} }
subgraph cluster_24 { subgraph cluster_23 {
color=blue color=blue
61 [label="Enter when branch condition "]; 61 [label="Enter when branch condition "];
62 [label="Type operator: ($subj$ is R|SubClass2|)"]; 62 [label="Type operator: ($subj$ is R|SubClass2|)"];
63 [label="Exit when branch condition"]; 63 [label="Exit when branch condition"];
} }
64 [label="Enter when branch result"]; 64 [label="Enter when branch result"];
subgraph cluster_25 { subgraph cluster_24 {
color=blue color=blue
65 [label="Enter block"]; 65 [label="Enter block"];
66 [label="Const: String(2)"]; 66 [label="Const: String(2)"];
@@ -185,7 +183,7 @@ digraph lambdaInWhenBranch_kt {
} }
68 [label="Exit when branch result"]; 68 [label="Exit when branch result"];
69 [label="Enter when branch result"]; 69 [label="Enter when branch result"];
subgraph cluster_26 { subgraph cluster_25 {
color=blue color=blue
70 [label="Enter block"]; 70 [label="Enter block"];
71 [label="Access variable R|<local>/p|"]; 71 [label="Access variable R|<local>/p|"];
@@ -256,4 +254,4 @@ digraph lambdaInWhenBranch_kt {
82 -> {83}; 82 -> {83};
83 -> {49} [color=green]; 83 -> {49} [color=green];
} }
@@ -69,8 +69,6 @@ digraph nullability_kt {
subgraph cluster_9 { subgraph cluster_9 {
color=red color=red
18 [label="Enter class QImpl" style="filled" fillcolor=red]; 18 [label="Enter class QImpl" style="filled" fillcolor=red];
subgraph cluster_10 {
color=blue
19 [label="Part of class initialization"]; 19 [label="Part of class initialization"];
20 [label="Exit class QImpl" style="filled" fillcolor=red]; 20 [label="Exit class QImpl" style="filled" fillcolor=red];
} }
@@ -79,7 +77,7 @@ digraph nullability_kt {
19 -> {26} [color=green]; 19 -> {26} [color=green];
19 -> {26} [style=dashed]; 19 -> {26} [style=dashed];
subgraph cluster_11 { subgraph cluster_10 {
color=red color=red
21 [label="Enter function <init>" style="filled" fillcolor=red]; 21 [label="Enter function <init>" style="filled" fillcolor=red];
22 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 22 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -88,14 +86,14 @@ digraph nullability_kt {
21 -> {22}; 21 -> {22};
22 -> {23}; 22 -> {23};
subgraph cluster_12 { subgraph cluster_11 {
color=red color=red
24 [label="Enter function getter" style="filled" fillcolor=red]; 24 [label="Enter function getter" style="filled" fillcolor=red];
25 [label="Exit function getter" style="filled" fillcolor=red]; 25 [label="Exit function getter" style="filled" fillcolor=red];
} }
24 -> {25}; 24 -> {25};
subgraph cluster_13 { subgraph cluster_12 {
color=red color=red
26 [label="Enter property" style="filled" fillcolor=red]; 26 [label="Enter property" style="filled" fillcolor=red];
27 [label="Access variable R|<local>/data|"]; 27 [label="Access variable R|<local>/data|"];
@@ -105,10 +103,10 @@ digraph nullability_kt {
27 -> {28}; 27 -> {28};
28 -> {20} [color=green]; 28 -> {20} [color=green];
subgraph cluster_14 { subgraph cluster_13 {
color=red color=red
29 [label="Enter function fdata" style="filled" fillcolor=red]; 29 [label="Enter function fdata" style="filled" fillcolor=red];
subgraph cluster_15 { subgraph cluster_14 {
color=blue color=blue
30 [label="Enter block"]; 30 [label="Enter block"];
31 [label="Const: Null(null)"]; 31 [label="Const: Null(null)"];
@@ -126,11 +124,9 @@ digraph nullability_kt {
33 -> {34} [style=dotted]; 33 -> {34} [style=dotted];
34 -> {35} [style=dotted]; 34 -> {35} [style=dotted];
subgraph cluster_16 { subgraph cluster_15 {
color=red color=red
36 [label="Enter class QImplMutable" style="filled" fillcolor=red]; 36 [label="Enter class QImplMutable" style="filled" fillcolor=red];
subgraph cluster_17 {
color=blue
37 [label="Part of class initialization"]; 37 [label="Part of class initialization"];
38 [label="Exit class QImplMutable" style="filled" fillcolor=red]; 38 [label="Exit class QImplMutable" style="filled" fillcolor=red];
} }
@@ -139,7 +135,7 @@ digraph nullability_kt {
37 -> {46} [color=green]; 37 -> {46} [color=green];
37 -> {46} [style=dashed]; 37 -> {46} [style=dashed];
subgraph cluster_18 { subgraph cluster_16 {
color=red color=red
39 [label="Enter function <init>" style="filled" fillcolor=red]; 39 [label="Enter function <init>" style="filled" fillcolor=red];
40 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 40 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -148,21 +144,21 @@ digraph nullability_kt {
39 -> {40}; 39 -> {40};
40 -> {41}; 40 -> {41};
subgraph cluster_19 { subgraph cluster_17 {
color=red color=red
42 [label="Enter function getter" style="filled" fillcolor=red]; 42 [label="Enter function getter" style="filled" fillcolor=red];
43 [label="Exit function getter" style="filled" fillcolor=red]; 43 [label="Exit function getter" style="filled" fillcolor=red];
} }
42 -> {43}; 42 -> {43};
subgraph cluster_20 { subgraph cluster_18 {
color=red color=red
44 [label="Enter function setter" style="filled" fillcolor=red]; 44 [label="Enter function setter" style="filled" fillcolor=red];
45 [label="Exit function setter" style="filled" fillcolor=red]; 45 [label="Exit function setter" style="filled" fillcolor=red];
} }
44 -> {45}; 44 -> {45};
subgraph cluster_21 { subgraph cluster_19 {
color=red color=red
46 [label="Enter property" style="filled" fillcolor=red]; 46 [label="Enter property" style="filled" fillcolor=red];
47 [label="Access variable R|<local>/data|"]; 47 [label="Access variable R|<local>/data|"];
@@ -172,10 +168,10 @@ digraph nullability_kt {
47 -> {48}; 47 -> {48};
48 -> {38} [color=green]; 48 -> {38} [color=green];
subgraph cluster_22 { subgraph cluster_20 {
color=red color=red
49 [label="Enter function fdata" style="filled" fillcolor=red]; 49 [label="Enter function fdata" style="filled" fillcolor=red];
subgraph cluster_23 { subgraph cluster_21 {
color=blue color=blue
50 [label="Enter block"]; 50 [label="Enter block"];
51 [label="Const: Null(null)"]; 51 [label="Const: Null(null)"];
@@ -193,14 +189,14 @@ digraph nullability_kt {
53 -> {54} [style=dotted]; 53 -> {54} [style=dotted];
54 -> {55} [style=dotted]; 54 -> {55} [style=dotted];
subgraph cluster_24 { subgraph cluster_22 {
color=red color=red
56 [label="Enter class QImplWithCustomGetter" style="filled" fillcolor=red]; 56 [label="Enter class QImplWithCustomGetter" style="filled" fillcolor=red];
57 [label="Exit class QImplWithCustomGetter" style="filled" fillcolor=red]; 57 [label="Exit class QImplWithCustomGetter" style="filled" fillcolor=red];
} }
56 -> {57} [color=green]; 56 -> {57} [color=green];
subgraph cluster_25 { subgraph cluster_23 {
color=red color=red
58 [label="Enter function <init>" style="filled" fillcolor=red]; 58 [label="Enter function <init>" style="filled" fillcolor=red];
59 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 59 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -209,10 +205,10 @@ digraph nullability_kt {
58 -> {59}; 58 -> {59};
59 -> {60}; 59 -> {60};
subgraph cluster_26 { subgraph cluster_24 {
color=red color=red
61 [label="Enter function getter" style="filled" fillcolor=red]; 61 [label="Enter function getter" style="filled" fillcolor=red];
subgraph cluster_27 { subgraph cluster_25 {
color=blue color=blue
62 [label="Enter block"]; 62 [label="Enter block"];
63 [label="Const: Null(null)"]; 63 [label="Const: Null(null)"];
@@ -230,10 +226,10 @@ digraph nullability_kt {
65 -> {66} [style=dotted]; 65 -> {66} [style=dotted];
66 -> {67} [style=dotted]; 66 -> {67} [style=dotted];
subgraph cluster_28 { subgraph cluster_26 {
color=red color=red
68 [label="Enter function fdata" style="filled" fillcolor=red]; 68 [label="Enter function fdata" style="filled" fillcolor=red];
subgraph cluster_29 { subgraph cluster_27 {
color=blue color=blue
69 [label="Enter block"]; 69 [label="Enter block"];
70 [label="Const: Null(null)"]; 70 [label="Const: Null(null)"];
@@ -251,16 +247,16 @@ digraph nullability_kt {
72 -> {73} [style=dotted]; 72 -> {73} [style=dotted];
73 -> {74} [style=dotted]; 73 -> {74} [style=dotted];
subgraph cluster_30 { subgraph cluster_28 {
color=red color=red
75 [label="Enter function test_1" style="filled" fillcolor=red]; 75 [label="Enter function test_1" style="filled" fillcolor=red];
subgraph cluster_31 { subgraph cluster_29 {
color=blue color=blue
76 [label="Enter block"]; 76 [label="Enter block"];
subgraph cluster_32 { subgraph cluster_30 {
color=blue color=blue
77 [label="Enter when"]; 77 [label="Enter when"];
subgraph cluster_33 { subgraph cluster_31 {
color=blue color=blue
78 [label="Enter when branch condition "]; 78 [label="Enter when branch condition "];
79 [label="Access variable R|<local>/x|"]; 79 [label="Access variable R|<local>/x|"];
@@ -268,13 +264,13 @@ digraph nullability_kt {
81 [label="Equality operator !="]; 81 [label="Equality operator !="];
82 [label="Exit when branch condition"]; 82 [label="Exit when branch condition"];
} }
subgraph cluster_34 { subgraph cluster_32 {
color=blue color=blue
83 [label="Enter when branch condition else"]; 83 [label="Enter when branch condition else"];
84 [label="Exit when branch condition"]; 84 [label="Exit when branch condition"];
} }
85 [label="Enter when branch result"]; 85 [label="Enter when branch result"];
subgraph cluster_35 { subgraph cluster_33 {
color=blue color=blue
86 [label="Enter block"]; 86 [label="Enter block"];
87 [label="Access variable R|<local>/x|"]; 87 [label="Access variable R|<local>/x|"];
@@ -283,7 +279,7 @@ digraph nullability_kt {
} }
90 [label="Exit when branch result"]; 90 [label="Exit when branch result"];
91 [label="Enter when branch result"]; 91 [label="Enter when branch result"];
subgraph cluster_36 { subgraph cluster_34 {
color=blue color=blue
92 [label="Enter block"]; 92 [label="Enter block"];
93 [label="Access variable R|<local>/x|"]; 93 [label="Access variable R|<local>/x|"];
@@ -326,16 +322,16 @@ digraph nullability_kt {
99 -> {100}; 99 -> {100};
100 -> {101}; 100 -> {101};
subgraph cluster_37 { subgraph cluster_35 {
color=red color=red
102 [label="Enter function test_2" style="filled" fillcolor=red]; 102 [label="Enter function test_2" style="filled" fillcolor=red];
subgraph cluster_38 { subgraph cluster_36 {
color=blue color=blue
103 [label="Enter block"]; 103 [label="Enter block"];
subgraph cluster_39 { subgraph cluster_37 {
color=blue color=blue
104 [label="Enter when"]; 104 [label="Enter when"];
subgraph cluster_40 { subgraph cluster_38 {
color=blue color=blue
105 [label="Enter when branch condition "]; 105 [label="Enter when branch condition "];
106 [label="Access variable R|<local>/x|"]; 106 [label="Access variable R|<local>/x|"];
@@ -343,13 +339,13 @@ digraph nullability_kt {
108 [label="Equality operator =="]; 108 [label="Equality operator =="];
109 [label="Exit when branch condition"]; 109 [label="Exit when branch condition"];
} }
subgraph cluster_41 { subgraph cluster_39 {
color=blue color=blue
110 [label="Enter when branch condition else"]; 110 [label="Enter when branch condition else"];
111 [label="Exit when branch condition"]; 111 [label="Exit when branch condition"];
} }
112 [label="Enter when branch result"]; 112 [label="Enter when branch result"];
subgraph cluster_42 { subgraph cluster_40 {
color=blue color=blue
113 [label="Enter block"]; 113 [label="Enter block"];
114 [label="Access variable R|<local>/x|"]; 114 [label="Access variable R|<local>/x|"];
@@ -358,7 +354,7 @@ digraph nullability_kt {
} }
117 [label="Exit when branch result"]; 117 [label="Exit when branch result"];
118 [label="Enter when branch result"]; 118 [label="Enter when branch result"];
subgraph cluster_43 { subgraph cluster_41 {
color=blue color=blue
119 [label="Enter block"]; 119 [label="Enter block"];
120 [label="Access variable R|<local>/x|"]; 120 [label="Access variable R|<local>/x|"];
@@ -401,10 +397,10 @@ digraph nullability_kt {
126 -> {127}; 126 -> {127};
127 -> {128}; 127 -> {128};
subgraph cluster_44 { subgraph cluster_42 {
color=red color=red
129 [label="Enter function test_3" style="filled" fillcolor=red]; 129 [label="Enter function test_3" style="filled" fillcolor=red];
subgraph cluster_45 { subgraph cluster_43 {
color=blue color=blue
130 [label="Enter block"]; 130 [label="Enter block"];
131 [label="Access variable R|<local>/x|"]; 131 [label="Access variable R|<local>/x|"];
@@ -434,16 +430,16 @@ digraph nullability_kt {
139 -> {140}; 139 -> {140};
140 -> {141}; 140 -> {141};
subgraph cluster_46 { subgraph cluster_44 {
color=red color=red
142 [label="Enter function test_4" style="filled" fillcolor=red]; 142 [label="Enter function test_4" style="filled" fillcolor=red];
subgraph cluster_47 { subgraph cluster_45 {
color=blue color=blue
143 [label="Enter block"]; 143 [label="Enter block"];
subgraph cluster_48 { subgraph cluster_46 {
color=blue color=blue
144 [label="Enter when"]; 144 [label="Enter when"];
subgraph cluster_49 { subgraph cluster_47 {
color=blue color=blue
145 [label="Enter when branch condition "]; 145 [label="Enter when branch condition "];
146 [label="Access variable R|<local>/x|"]; 146 [label="Access variable R|<local>/x|"];
@@ -456,7 +452,7 @@ digraph nullability_kt {
} }
153 [label="Synthetic else branch"]; 153 [label="Synthetic else branch"];
154 [label="Enter when branch result"]; 154 [label="Enter when branch result"];
subgraph cluster_50 { subgraph cluster_48 {
color=blue color=blue
155 [label="Enter block"]; 155 [label="Enter block"];
156 [label="Jump: ^test_4 Unit"]; 156 [label="Jump: ^test_4 Unit"];
@@ -496,16 +492,16 @@ digraph nullability_kt {
162 -> {163}; 162 -> {163};
163 -> {164}; 163 -> {164};
subgraph cluster_51 { subgraph cluster_49 {
color=red color=red
165 [label="Enter function test_5" style="filled" fillcolor=red]; 165 [label="Enter function test_5" style="filled" fillcolor=red];
subgraph cluster_52 { subgraph cluster_50 {
color=blue color=blue
166 [label="Enter block"]; 166 [label="Enter block"];
subgraph cluster_53 { subgraph cluster_51 {
color=blue color=blue
167 [label="Enter when"]; 167 [label="Enter when"];
subgraph cluster_54 { subgraph cluster_52 {
color=blue color=blue
168 [label="Enter when branch condition "]; 168 [label="Enter when branch condition "];
169 [label="Access variable R|<local>/q|"]; 169 [label="Access variable R|<local>/q|"];
@@ -524,7 +520,7 @@ digraph nullability_kt {
} }
182 [label="Synthetic else branch"]; 182 [label="Synthetic else branch"];
183 [label="Enter when branch result"]; 183 [label="Enter when branch result"];
subgraph cluster_55 { subgraph cluster_53 {
color=blue color=blue
184 [label="Enter block"]; 184 [label="Enter block"];
185 [label="Access variable R|<local>/q|"]; 185 [label="Access variable R|<local>/q|"];
@@ -579,10 +575,10 @@ digraph nullability_kt {
196 -> {197}; 196 -> {197};
197 -> {198}; 197 -> {198};
subgraph cluster_56 { subgraph cluster_54 {
color=red color=red
199 [label="Enter function test_6" style="filled" fillcolor=red]; 199 [label="Enter function test_6" style="filled" fillcolor=red];
subgraph cluster_57 { subgraph cluster_55 {
color=blue color=blue
200 [label="Enter block"]; 200 [label="Enter block"];
201 [label="Access variable R|<local>/q|"]; 201 [label="Access variable R|<local>/q|"];
@@ -644,16 +640,16 @@ digraph nullability_kt {
225 -> {226}; 225 -> {226};
226 -> {227}; 226 -> {227};
subgraph cluster_58 { subgraph cluster_56 {
color=red color=red
228 [label="Enter function test_7" style="filled" fillcolor=red]; 228 [label="Enter function test_7" style="filled" fillcolor=red];
subgraph cluster_59 { subgraph cluster_57 {
color=blue color=blue
229 [label="Enter block"]; 229 [label="Enter block"];
subgraph cluster_60 { subgraph cluster_58 {
color=blue color=blue
230 [label="Enter when"]; 230 [label="Enter when"];
subgraph cluster_61 { subgraph cluster_59 {
color=blue color=blue
231 [label="Enter when branch condition "]; 231 [label="Enter when branch condition "];
232 [label="Access variable R|<local>/q|"]; 232 [label="Access variable R|<local>/q|"];
@@ -672,7 +668,7 @@ digraph nullability_kt {
} }
245 [label="Synthetic else branch"]; 245 [label="Synthetic else branch"];
246 [label="Enter when branch result"]; 246 [label="Enter when branch result"];
subgraph cluster_62 { subgraph cluster_60 {
color=blue color=blue
247 [label="Enter block"]; 247 [label="Enter block"];
248 [label="Access variable R|<local>/q|"]; 248 [label="Access variable R|<local>/q|"];
@@ -727,16 +723,16 @@ digraph nullability_kt {
259 -> {260}; 259 -> {260};
260 -> {261}; 260 -> {261};
subgraph cluster_63 { subgraph cluster_61 {
color=red color=red
262 [label="Enter function test_8" style="filled" fillcolor=red]; 262 [label="Enter function test_8" style="filled" fillcolor=red];
subgraph cluster_64 { subgraph cluster_62 {
color=blue color=blue
263 [label="Enter block"]; 263 [label="Enter block"];
subgraph cluster_65 { subgraph cluster_63 {
color=blue color=blue
264 [label="Enter when"]; 264 [label="Enter when"];
subgraph cluster_66 { subgraph cluster_64 {
color=blue color=blue
265 [label="Enter when branch condition "]; 265 [label="Enter when branch condition "];
266 [label="Access variable R|<local>/b|"]; 266 [label="Access variable R|<local>/b|"];
@@ -746,7 +742,7 @@ digraph nullability_kt {
} }
270 [label="Synthetic else branch"]; 270 [label="Synthetic else branch"];
271 [label="Enter when branch result"]; 271 [label="Enter when branch result"];
subgraph cluster_67 { subgraph cluster_65 {
color=blue color=blue
272 [label="Enter block"]; 272 [label="Enter block"];
273 [label="Access variable R|<local>/b|"]; 273 [label="Access variable R|<local>/b|"];
@@ -778,16 +774,16 @@ digraph nullability_kt {
277 -> {278}; 277 -> {278};
278 -> {279}; 278 -> {279};
subgraph cluster_68 { subgraph cluster_66 {
color=red color=red
280 [label="Enter function test_9" style="filled" fillcolor=red]; 280 [label="Enter function test_9" style="filled" fillcolor=red];
subgraph cluster_69 { subgraph cluster_67 {
color=blue color=blue
281 [label="Enter block"]; 281 [label="Enter block"];
subgraph cluster_70 { subgraph cluster_68 {
color=blue color=blue
282 [label="Enter when"]; 282 [label="Enter when"];
subgraph cluster_71 { subgraph cluster_69 {
color=blue color=blue
283 [label="Enter when branch condition "]; 283 [label="Enter when branch condition "];
284 [label="Access variable R|<local>/a|"]; 284 [label="Access variable R|<local>/a|"];
@@ -797,7 +793,7 @@ digraph nullability_kt {
} }
288 [label="Synthetic else branch"]; 288 [label="Synthetic else branch"];
289 [label="Enter when branch result"]; 289 [label="Enter when branch result"];
subgraph cluster_72 { subgraph cluster_70 {
color=blue color=blue
290 [label="Enter block"]; 290 [label="Enter block"];
291 [label="Access variable R|<local>/b|"]; 291 [label="Access variable R|<local>/b|"];
@@ -809,10 +805,10 @@ digraph nullability_kt {
} }
296 [label="Access variable R|<local>/b|"]; 296 [label="Access variable R|<local>/b|"];
297 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"]; 297 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"];
subgraph cluster_73 { subgraph cluster_71 {
color=blue color=blue
298 [label="Enter when"]; 298 [label="Enter when"];
subgraph cluster_74 { subgraph cluster_72 {
color=blue color=blue
299 [label="Enter when branch condition "]; 299 [label="Enter when branch condition "];
300 [label="Access variable R|<local>/a|"]; 300 [label="Access variable R|<local>/a|"];
@@ -822,7 +818,7 @@ digraph nullability_kt {
} }
304 [label="Synthetic else branch"]; 304 [label="Synthetic else branch"];
305 [label="Enter when branch result"]; 305 [label="Enter when branch result"];
subgraph cluster_75 { subgraph cluster_73 {
color=blue color=blue
306 [label="Enter block"]; 306 [label="Enter block"];
307 [label="Access variable R|<local>/b|"]; 307 [label="Access variable R|<local>/b|"];
@@ -834,10 +830,10 @@ digraph nullability_kt {
} }
312 [label="Access variable R|<local>/b|"]; 312 [label="Access variable R|<local>/b|"];
313 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"]; 313 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"];
subgraph cluster_76 { subgraph cluster_74 {
color=blue color=blue
314 [label="Enter when"]; 314 [label="Enter when"];
subgraph cluster_77 { subgraph cluster_75 {
color=blue color=blue
315 [label="Enter when branch condition "]; 315 [label="Enter when branch condition "];
316 [label="Access variable R|<local>/b|"]; 316 [label="Access variable R|<local>/b|"];
@@ -847,7 +843,7 @@ digraph nullability_kt {
} }
320 [label="Synthetic else branch"]; 320 [label="Synthetic else branch"];
321 [label="Enter when branch result"]; 321 [label="Enter when branch result"];
subgraph cluster_78 { subgraph cluster_76 {
color=blue color=blue
322 [label="Enter block"]; 322 [label="Enter block"];
323 [label="Access variable R|<local>/b|"]; 323 [label="Access variable R|<local>/b|"];
@@ -859,10 +855,10 @@ digraph nullability_kt {
} }
328 [label="Access variable R|<local>/b|"]; 328 [label="Access variable R|<local>/b|"];
329 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"]; 329 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"];
subgraph cluster_79 { subgraph cluster_77 {
color=blue color=blue
330 [label="Enter when"]; 330 [label="Enter when"];
subgraph cluster_80 { subgraph cluster_78 {
color=blue color=blue
331 [label="Enter when branch condition "]; 331 [label="Enter when branch condition "];
332 [label="Access variable R|<local>/b|"]; 332 [label="Access variable R|<local>/b|"];
@@ -872,7 +868,7 @@ digraph nullability_kt {
} }
336 [label="Synthetic else branch"]; 336 [label="Synthetic else branch"];
337 [label="Enter when branch result"]; 337 [label="Enter when branch result"];
subgraph cluster_81 { subgraph cluster_79 {
color=blue color=blue
338 [label="Enter block"]; 338 [label="Enter block"];
339 [label="Access variable R|<local>/b|"]; 339 [label="Access variable R|<local>/b|"];
@@ -956,16 +952,16 @@ digraph nullability_kt {
345 -> {346}; 345 -> {346};
346 -> {347}; 346 -> {347};
subgraph cluster_82 { subgraph cluster_80 {
color=red color=red
348 [label="Enter function test_10" style="filled" fillcolor=red]; 348 [label="Enter function test_10" style="filled" fillcolor=red];
subgraph cluster_83 { subgraph cluster_81 {
color=blue color=blue
349 [label="Enter block"]; 349 [label="Enter block"];
subgraph cluster_84 { subgraph cluster_82 {
color=blue color=blue
350 [label="Enter when"]; 350 [label="Enter when"];
subgraph cluster_85 { subgraph cluster_83 {
color=blue color=blue
351 [label="Enter when branch condition "]; 351 [label="Enter when branch condition "];
352 [label="Access variable R|<local>/a|"]; 352 [label="Access variable R|<local>/a|"];
@@ -975,7 +971,7 @@ digraph nullability_kt {
} }
356 [label="Synthetic else branch"]; 356 [label="Synthetic else branch"];
357 [label="Enter when branch result"]; 357 [label="Enter when branch result"];
subgraph cluster_86 { subgraph cluster_84 {
color=blue color=blue
358 [label="Enter block"]; 358 [label="Enter block"];
359 [label="Access variable R|<local>/b|"]; 359 [label="Access variable R|<local>/b|"];
@@ -987,10 +983,10 @@ digraph nullability_kt {
} }
364 [label="Access variable R|<local>/b|"]; 364 [label="Access variable R|<local>/b|"];
365 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"]; 365 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"];
subgraph cluster_87 { subgraph cluster_85 {
color=blue color=blue
366 [label="Enter when"]; 366 [label="Enter when"];
subgraph cluster_88 { subgraph cluster_86 {
color=blue color=blue
367 [label="Enter when branch condition "]; 367 [label="Enter when branch condition "];
368 [label="Access variable R|<local>/a|"]; 368 [label="Access variable R|<local>/a|"];
@@ -1000,7 +996,7 @@ digraph nullability_kt {
} }
372 [label="Synthetic else branch"]; 372 [label="Synthetic else branch"];
373 [label="Enter when branch result"]; 373 [label="Enter when branch result"];
subgraph cluster_89 { subgraph cluster_87 {
color=blue color=blue
374 [label="Enter block"]; 374 [label="Enter block"];
375 [label="Access variable R|<local>/b|"]; 375 [label="Access variable R|<local>/b|"];
@@ -1012,10 +1008,10 @@ digraph nullability_kt {
} }
380 [label="Access variable R|<local>/b|"]; 380 [label="Access variable R|<local>/b|"];
381 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"]; 381 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"];
subgraph cluster_90 { subgraph cluster_88 {
color=blue color=blue
382 [label="Enter when"]; 382 [label="Enter when"];
subgraph cluster_91 { subgraph cluster_89 {
color=blue color=blue
383 [label="Enter when branch condition "]; 383 [label="Enter when branch condition "];
384 [label="Access variable R|<local>/b|"]; 384 [label="Access variable R|<local>/b|"];
@@ -1025,7 +1021,7 @@ digraph nullability_kt {
} }
388 [label="Synthetic else branch"]; 388 [label="Synthetic else branch"];
389 [label="Enter when branch result"]; 389 [label="Enter when branch result"];
subgraph cluster_92 { subgraph cluster_90 {
color=blue color=blue
390 [label="Enter block"]; 390 [label="Enter block"];
391 [label="Access variable R|<local>/b|"]; 391 [label="Access variable R|<local>/b|"];
@@ -1037,10 +1033,10 @@ digraph nullability_kt {
} }
396 [label="Access variable R|<local>/b|"]; 396 [label="Access variable R|<local>/b|"];
397 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"]; 397 [label="Function call: R|<local>/b|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/Int.inc>#()"];
subgraph cluster_93 { subgraph cluster_91 {
color=blue color=blue
398 [label="Enter when"]; 398 [label="Enter when"];
subgraph cluster_94 { subgraph cluster_92 {
color=blue color=blue
399 [label="Enter when branch condition "]; 399 [label="Enter when branch condition "];
400 [label="Access variable R|<local>/b|"]; 400 [label="Access variable R|<local>/b|"];
@@ -1050,7 +1046,7 @@ digraph nullability_kt {
} }
404 [label="Synthetic else branch"]; 404 [label="Synthetic else branch"];
405 [label="Enter when branch result"]; 405 [label="Enter when branch result"];
subgraph cluster_95 { subgraph cluster_93 {
color=blue color=blue
406 [label="Enter block"]; 406 [label="Enter block"];
407 [label="Access variable R|<local>/b|"]; 407 [label="Access variable R|<local>/b|"];
@@ -1134,16 +1130,16 @@ digraph nullability_kt {
413 -> {414}; 413 -> {414};
414 -> {415}; 414 -> {415};
subgraph cluster_96 { subgraph cluster_94 {
color=red color=red
416 [label="Enter function test_11" style="filled" fillcolor=red]; 416 [label="Enter function test_11" style="filled" fillcolor=red];
subgraph cluster_97 { subgraph cluster_95 {
color=blue color=blue
417 [label="Enter block"]; 417 [label="Enter block"];
subgraph cluster_98 { subgraph cluster_96 {
color=blue color=blue
418 [label="Enter when"]; 418 [label="Enter when"];
subgraph cluster_99 { subgraph cluster_97 {
color=blue color=blue
419 [label="Enter when branch condition "]; 419 [label="Enter when branch condition "];
420 [label="Access variable R|<local>/q|"]; 420 [label="Access variable R|<local>/q|"];
@@ -1162,7 +1158,7 @@ digraph nullability_kt {
} }
433 [label="Synthetic else branch"]; 433 [label="Synthetic else branch"];
434 [label="Enter when branch result"]; 434 [label="Enter when branch result"];
subgraph cluster_100 { subgraph cluster_98 {
color=blue color=blue
435 [label="Enter block"]; 435 [label="Enter block"];
436 [label="Access variable R|<local>/q|"]; 436 [label="Access variable R|<local>/q|"];
@@ -1183,10 +1179,10 @@ digraph nullability_kt {
451 [label="Access variable R|/QImpl.data|"]; 451 [label="Access variable R|/QImpl.data|"];
452 [label="Access variable <Inapplicable(INAPPLICABLE_WRONG_RECEIVER): /MyData.s>#"]; 452 [label="Access variable <Inapplicable(INAPPLICABLE_WRONG_RECEIVER): /MyData.s>#"];
453 [label="Function call: R|<local>/q2|.R|/QImpl.data|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): /MyData.s>#.R|kotlin/Int.inc|()"]; 453 [label="Function call: R|<local>/q2|.R|/QImpl.data|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): /MyData.s>#.R|kotlin/Int.inc|()"];
subgraph cluster_101 { subgraph cluster_99 {
color=blue color=blue
454 [label="Enter when"]; 454 [label="Enter when"];
subgraph cluster_102 { subgraph cluster_100 {
color=blue color=blue
455 [label="Enter when branch condition "]; 455 [label="Enter when branch condition "];
456 [label="Access variable R|<local>/q2|"]; 456 [label="Access variable R|<local>/q2|"];
@@ -1197,7 +1193,7 @@ digraph nullability_kt {
} }
461 [label="Synthetic else branch"]; 461 [label="Synthetic else branch"];
462 [label="Enter when branch result"]; 462 [label="Enter when branch result"];
subgraph cluster_103 { subgraph cluster_101 {
color=blue color=blue
463 [label="Enter block"]; 463 [label="Enter block"];
464 [label="Access variable R|<local>/q2|"]; 464 [label="Access variable R|<local>/q2|"];
@@ -1284,16 +1280,16 @@ digraph nullability_kt {
476 -> {477}; 476 -> {477};
477 -> {478}; 477 -> {478};
subgraph cluster_104 { subgraph cluster_102 {
color=red color=red
479 [label="Enter function test_12" style="filled" fillcolor=red]; 479 [label="Enter function test_12" style="filled" fillcolor=red];
subgraph cluster_105 { subgraph cluster_103 {
color=blue color=blue
480 [label="Enter block"]; 480 [label="Enter block"];
subgraph cluster_106 { subgraph cluster_104 {
color=blue color=blue
481 [label="Enter when"]; 481 [label="Enter when"];
subgraph cluster_107 { subgraph cluster_105 {
color=blue color=blue
482 [label="Enter when branch condition "]; 482 [label="Enter when branch condition "];
483 [label="Access variable R|<local>/q|"]; 483 [label="Access variable R|<local>/q|"];
@@ -1312,7 +1308,7 @@ digraph nullability_kt {
} }
496 [label="Synthetic else branch"]; 496 [label="Synthetic else branch"];
497 [label="Enter when branch result"]; 497 [label="Enter when branch result"];
subgraph cluster_108 { subgraph cluster_106 {
color=blue color=blue
498 [label="Enter block"]; 498 [label="Enter block"];
499 [label="Access variable R|<local>/q|"]; 499 [label="Access variable R|<local>/q|"];
@@ -1367,16 +1363,16 @@ digraph nullability_kt {
510 -> {511}; 510 -> {511};
511 -> {512}; 511 -> {512};
subgraph cluster_109 { subgraph cluster_107 {
color=red color=red
513 [label="Enter function test_13" style="filled" fillcolor=red]; 513 [label="Enter function test_13" style="filled" fillcolor=red];
subgraph cluster_110 { subgraph cluster_108 {
color=blue color=blue
514 [label="Enter block"]; 514 [label="Enter block"];
subgraph cluster_111 { subgraph cluster_109 {
color=blue color=blue
515 [label="Enter when"]; 515 [label="Enter when"];
subgraph cluster_112 { subgraph cluster_110 {
color=blue color=blue
516 [label="Enter when branch condition "]; 516 [label="Enter when branch condition "];
517 [label="Access variable R|<local>/q|"]; 517 [label="Access variable R|<local>/q|"];
@@ -1395,7 +1391,7 @@ digraph nullability_kt {
} }
530 [label="Synthetic else branch"]; 530 [label="Synthetic else branch"];
531 [label="Enter when branch result"]; 531 [label="Enter when branch result"];
subgraph cluster_113 { subgraph cluster_111 {
color=blue color=blue
532 [label="Enter block"]; 532 [label="Enter block"];
533 [label="Access variable R|<local>/q|"]; 533 [label="Access variable R|<local>/q|"];
@@ -1450,4 +1446,4 @@ digraph nullability_kt {
544 -> {545}; 544 -> {545};
545 -> {546}; 545 -> {546};
} }
@@ -6,8 +6,6 @@ digraph assignSafeCall_kt {
subgraph cluster_0 { subgraph cluster_0 {
color=red color=red
0 [label="Enter class A" style="filled" fillcolor=red]; 0 [label="Enter class A" style="filled" fillcolor=red];
subgraph cluster_1 {
color=blue
1 [label="Part of class initialization"]; 1 [label="Part of class initialization"];
2 [label="Exit class A" style="filled" fillcolor=red]; 2 [label="Exit class A" style="filled" fillcolor=red];
} }
@@ -16,7 +14,7 @@ digraph assignSafeCall_kt {
1 -> {15} [color=green]; 1 -> {15} [color=green];
1 -> {15} [style=dashed]; 1 -> {15} [style=dashed];
subgraph cluster_2 { subgraph cluster_1 {
color=red color=red
3 [label="Enter function <init>" style="filled" fillcolor=red]; 3 [label="Enter function <init>" style="filled" fillcolor=red];
4 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 4 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -25,10 +23,10 @@ digraph assignSafeCall_kt {
3 -> {4}; 3 -> {4};
4 -> {5}; 4 -> {5};
subgraph cluster_3 { subgraph cluster_2 {
color=red color=red
6 [label="Enter function foo" style="filled" fillcolor=red]; 6 [label="Enter function foo" style="filled" fillcolor=red];
subgraph cluster_4 { subgraph cluster_3 {
color=blue color=blue
7 [label="Enter block"]; 7 [label="Enter block"];
8 [label="Const: Int(1)"]; 8 [label="Const: Int(1)"];
@@ -46,14 +44,14 @@ digraph assignSafeCall_kt {
10 -> {11} [style=dotted]; 10 -> {11} [style=dotted];
11 -> {12} [style=dotted]; 11 -> {12} [style=dotted];
subgraph cluster_5 { subgraph cluster_4 {
color=red color=red
13 [label="Enter function getter" style="filled" fillcolor=red]; 13 [label="Enter function getter" style="filled" fillcolor=red];
14 [label="Exit function getter" style="filled" fillcolor=red]; 14 [label="Exit function getter" style="filled" fillcolor=red];
} }
13 -> {14}; 13 -> {14};
subgraph cluster_6 { subgraph cluster_5 {
color=red color=red
15 [label="Enter property" style="filled" fillcolor=red]; 15 [label="Enter property" style="filled" fillcolor=red];
16 [label="Const: Int(1)"]; 16 [label="Const: Int(1)"];
@@ -63,10 +61,10 @@ digraph assignSafeCall_kt {
16 -> {17}; 16 -> {17};
17 -> {2} [color=green]; 17 -> {2} [color=green];
subgraph cluster_7 { subgraph cluster_6 {
color=red color=red
18 [label="Enter function bar" style="filled" fillcolor=red]; 18 [label="Enter function bar" style="filled" fillcolor=red];
subgraph cluster_8 { subgraph cluster_7 {
color=blue color=blue
19 [label="Enter block"]; 19 [label="Enter block"];
20 [label="Exit block"]; 20 [label="Exit block"];
@@ -77,10 +75,10 @@ digraph assignSafeCall_kt {
19 -> {20}; 19 -> {20};
20 -> {21}; 20 -> {21};
subgraph cluster_9 { subgraph cluster_8 {
color=red color=red
22 [label="Enter function test_1" style="filled" fillcolor=red]; 22 [label="Enter function test_1" style="filled" fillcolor=red];
subgraph cluster_10 { subgraph cluster_9 {
color=blue color=blue
23 [label="Enter block"]; 23 [label="Enter block"];
24 [label="Access variable R|<local>/a|"]; 24 [label="Access variable R|<local>/a|"];
@@ -88,10 +86,10 @@ digraph assignSafeCall_kt {
26 [label="Access variable R|/A.x|"]; 26 [label="Access variable R|/A.x|"];
27 [label="Exit safe call"]; 27 [label="Exit safe call"];
28 [label="Variable declaration: lval x: R|kotlin/Int?|"]; 28 [label="Variable declaration: lval x: R|kotlin/Int?|"];
subgraph cluster_11 { subgraph cluster_10 {
color=blue color=blue
29 [label="Enter when"]; 29 [label="Enter when"];
subgraph cluster_12 { subgraph cluster_11 {
color=blue color=blue
30 [label="Enter when branch condition "]; 30 [label="Enter when branch condition "];
31 [label="Access variable R|<local>/x|"]; 31 [label="Access variable R|<local>/x|"];
@@ -101,7 +99,7 @@ digraph assignSafeCall_kt {
} }
35 [label="Synthetic else branch"]; 35 [label="Synthetic else branch"];
36 [label="Enter when branch result"]; 36 [label="Enter when branch result"];
subgraph cluster_13 { subgraph cluster_12 {
color=blue color=blue
37 [label="Enter block"]; 37 [label="Enter block"];
38 [label="Access variable R|<local>/a|"]; 38 [label="Access variable R|<local>/a|"];
@@ -138,10 +136,10 @@ digraph assignSafeCall_kt {
42 -> {43}; 42 -> {43};
43 -> {44}; 43 -> {44};
subgraph cluster_14 { subgraph cluster_13 {
color=red color=red
45 [label="Enter function test_2" style="filled" fillcolor=red]; 45 [label="Enter function test_2" style="filled" fillcolor=red];
subgraph cluster_15 { subgraph cluster_14 {
color=blue color=blue
46 [label="Enter block"]; 46 [label="Enter block"];
47 [label="Access variable R|<local>/a|"]; 47 [label="Access variable R|<local>/a|"];
@@ -149,10 +147,10 @@ digraph assignSafeCall_kt {
49 [label="Function call: $subj$.R|/A.foo|()"]; 49 [label="Function call: $subj$.R|/A.foo|()"];
50 [label="Exit safe call"]; 50 [label="Exit safe call"];
51 [label="Variable declaration: lval x: R|kotlin/Int?|"]; 51 [label="Variable declaration: lval x: R|kotlin/Int?|"];
subgraph cluster_16 { subgraph cluster_15 {
color=blue color=blue
52 [label="Enter when"]; 52 [label="Enter when"];
subgraph cluster_17 { subgraph cluster_16 {
color=blue color=blue
53 [label="Enter when branch condition "]; 53 [label="Enter when branch condition "];
54 [label="Access variable R|<local>/x|"]; 54 [label="Access variable R|<local>/x|"];
@@ -162,7 +160,7 @@ digraph assignSafeCall_kt {
} }
58 [label="Synthetic else branch"]; 58 [label="Synthetic else branch"];
59 [label="Enter when branch result"]; 59 [label="Enter when branch result"];
subgraph cluster_18 { subgraph cluster_17 {
color=blue color=blue
60 [label="Enter block"]; 60 [label="Enter block"];
61 [label="Access variable R|<local>/a|"]; 61 [label="Access variable R|<local>/a|"];
@@ -199,10 +197,10 @@ digraph assignSafeCall_kt {
65 -> {66}; 65 -> {66};
66 -> {67}; 66 -> {67};
subgraph cluster_19 { subgraph cluster_18 {
color=red color=red
68 [label="Enter function test_3" style="filled" fillcolor=red]; 68 [label="Enter function test_3" style="filled" fillcolor=red];
subgraph cluster_20 { subgraph cluster_19 {
color=blue color=blue
69 [label="Enter block"]; 69 [label="Enter block"];
70 [label="Access variable R|<local>/x|"]; 70 [label="Access variable R|<local>/x|"];
@@ -240,38 +238,38 @@ digraph assignSafeCall_kt {
82 -> {83}; 82 -> {83};
83 -> {84}; 83 -> {84};
subgraph cluster_21 { subgraph cluster_20 {
color=red color=red
85 [label="Enter class B" style="filled" fillcolor=red]; 85 [label="Enter class B" style="filled" fillcolor=red];
86 [label="Exit class B" style="filled" fillcolor=red]; 86 [label="Exit class B" style="filled" fillcolor=red];
} }
85 -> {86} [color=green]; 85 -> {86} [color=green];
subgraph cluster_22 { subgraph cluster_21 {
color=red color=red
87 [label="Enter function foo" style="filled" fillcolor=red]; 87 [label="Enter function foo" style="filled" fillcolor=red];
88 [label="Exit function foo" style="filled" fillcolor=red]; 88 [label="Exit function foo" style="filled" fillcolor=red];
} }
87 -> {88}; 87 -> {88};
subgraph cluster_23 { subgraph cluster_22 {
color=red color=red
89 [label="Enter function getter" style="filled" fillcolor=red]; 89 [label="Enter function getter" style="filled" fillcolor=red];
90 [label="Exit function getter" style="filled" fillcolor=red]; 90 [label="Exit function getter" style="filled" fillcolor=red];
} }
89 -> {90}; 89 -> {90};
subgraph cluster_24 { subgraph cluster_23 {
color=red color=red
91 [label="Enter function bar" style="filled" fillcolor=red]; 91 [label="Enter function bar" style="filled" fillcolor=red];
92 [label="Exit function bar" style="filled" fillcolor=red]; 92 [label="Exit function bar" style="filled" fillcolor=red];
} }
91 -> {92}; 91 -> {92};
subgraph cluster_25 { subgraph cluster_24 {
color=red color=red
93 [label="Enter function test_1" style="filled" fillcolor=red]; 93 [label="Enter function test_1" style="filled" fillcolor=red];
subgraph cluster_26 { subgraph cluster_25 {
color=blue color=blue
94 [label="Enter block"]; 94 [label="Enter block"];
95 [label="Access variable R|<local>/a|"]; 95 [label="Access variable R|<local>/a|"];
@@ -279,10 +277,10 @@ digraph assignSafeCall_kt {
97 [label="Access variable R|/B.x|"]; 97 [label="Access variable R|/B.x|"];
98 [label="Exit safe call"]; 98 [label="Exit safe call"];
99 [label="Variable declaration: lval x: R|kotlin/Int?|"]; 99 [label="Variable declaration: lval x: R|kotlin/Int?|"];
subgraph cluster_27 { subgraph cluster_26 {
color=blue color=blue
100 [label="Enter when"]; 100 [label="Enter when"];
subgraph cluster_28 { subgraph cluster_27 {
color=blue color=blue
101 [label="Enter when branch condition "]; 101 [label="Enter when branch condition "];
102 [label="Access variable R|<local>/x|"]; 102 [label="Access variable R|<local>/x|"];
@@ -292,7 +290,7 @@ digraph assignSafeCall_kt {
} }
106 [label="Synthetic else branch"]; 106 [label="Synthetic else branch"];
107 [label="Enter when branch result"]; 107 [label="Enter when branch result"];
subgraph cluster_29 { subgraph cluster_28 {
color=blue color=blue
108 [label="Enter block"]; 108 [label="Enter block"];
109 [label="Access variable R|<local>/a|"]; 109 [label="Access variable R|<local>/a|"];
@@ -329,10 +327,10 @@ digraph assignSafeCall_kt {
113 -> {114}; 113 -> {114};
114 -> {115}; 114 -> {115};
subgraph cluster_30 { subgraph cluster_29 {
color=red color=red
116 [label="Enter function test_2" style="filled" fillcolor=red]; 116 [label="Enter function test_2" style="filled" fillcolor=red];
subgraph cluster_31 { subgraph cluster_30 {
color=blue color=blue
117 [label="Enter block"]; 117 [label="Enter block"];
118 [label="Access variable R|<local>/a|"]; 118 [label="Access variable R|<local>/a|"];
@@ -340,10 +338,10 @@ digraph assignSafeCall_kt {
120 [label="Function call: $subj$.R|/B.foo|()"]; 120 [label="Function call: $subj$.R|/B.foo|()"];
121 [label="Exit safe call"]; 121 [label="Exit safe call"];
122 [label="Variable declaration: lval x: R|kotlin/Int?|"]; 122 [label="Variable declaration: lval x: R|kotlin/Int?|"];
subgraph cluster_32 { subgraph cluster_31 {
color=blue color=blue
123 [label="Enter when"]; 123 [label="Enter when"];
subgraph cluster_33 { subgraph cluster_32 {
color=blue color=blue
124 [label="Enter when branch condition "]; 124 [label="Enter when branch condition "];
125 [label="Access variable R|<local>/x|"]; 125 [label="Access variable R|<local>/x|"];
@@ -353,7 +351,7 @@ digraph assignSafeCall_kt {
} }
129 [label="Synthetic else branch"]; 129 [label="Synthetic else branch"];
130 [label="Enter when branch result"]; 130 [label="Enter when branch result"];
subgraph cluster_34 { subgraph cluster_33 {
color=blue color=blue
131 [label="Enter block"]; 131 [label="Enter block"];
132 [label="Access variable R|<local>/a|"]; 132 [label="Access variable R|<local>/a|"];
@@ -390,10 +388,10 @@ digraph assignSafeCall_kt {
136 -> {137}; 136 -> {137};
137 -> {138}; 137 -> {138};
subgraph cluster_35 { subgraph cluster_34 {
color=red color=red
139 [label="Enter function test_3" style="filled" fillcolor=red]; 139 [label="Enter function test_3" style="filled" fillcolor=red];
subgraph cluster_36 { subgraph cluster_35 {
color=blue color=blue
140 [label="Enter block"]; 140 [label="Enter block"];
141 [label="Access variable R|<local>/x|"]; 141 [label="Access variable R|<local>/x|"];
@@ -431,4 +429,4 @@ digraph assignSafeCall_kt {
153 -> {154}; 153 -> {154};
154 -> {155}; 154 -> {155};
} }
@@ -50,8 +50,6 @@ digraph smartCastInInit_kt {
subgraph cluster_5 { subgraph cluster_5 {
color=red color=red
14 [label="Enter class Main" style="filled" fillcolor=red]; 14 [label="Enter class Main" style="filled" fillcolor=red];
subgraph cluster_6 {
color=blue
15 [label="Part of class initialization"]; 15 [label="Part of class initialization"];
16 [label="Exit class Main" style="filled" fillcolor=red]; 16 [label="Exit class Main" style="filled" fillcolor=red];
} }
@@ -60,7 +58,7 @@ digraph smartCastInInit_kt {
15 -> {22} [color=green]; 15 -> {22} [color=green];
15 -> {22} [style=dashed]; 15 -> {22} [style=dashed];
subgraph cluster_7 { subgraph cluster_6 {
color=red color=red
17 [label="Enter function <init>" style="filled" fillcolor=red]; 17 [label="Enter function <init>" style="filled" fillcolor=red];
18 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 18 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -69,17 +67,17 @@ digraph smartCastInInit_kt {
17 -> {18}; 17 -> {18};
18 -> {19}; 18 -> {19};
subgraph cluster_8 { subgraph cluster_7 {
color=red color=red
20 [label="Enter function getter" style="filled" fillcolor=red]; 20 [label="Enter function getter" style="filled" fillcolor=red];
21 [label="Exit function getter" style="filled" fillcolor=red]; 21 [label="Exit function getter" style="filled" fillcolor=red];
} }
20 -> {21}; 20 -> {21};
subgraph cluster_9 { subgraph cluster_8 {
color=red color=red
22 [label="Enter init block" style="filled" fillcolor=red]; 22 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_10 { subgraph cluster_9 {
color=blue color=blue
23 [label="Enter block"]; 23 [label="Enter block"];
24 [label="Function call: R|/s|()"]; 24 [label="Function call: R|/s|()"];
@@ -99,4 +97,4 @@ digraph smartCastInInit_kt {
28 -> {29}; 28 -> {29};
29 -> {16} [color=green]; 29 -> {16} [color=green];
} }
@@ -117,11 +117,7 @@ digraph smartcastToNothing_kt {
subgraph cluster_10 { subgraph cluster_10 {
color=red color=red
38 [label="Enter class A" style="filled" fillcolor=red]; 38 [label="Enter class A" style="filled" fillcolor=red];
subgraph cluster_11 {
color=blue
39 [label="Part of class initialization"]; 39 [label="Part of class initialization"];
subgraph cluster_12 {
color=blue
40 [label="Part of class initialization"]; 40 [label="Part of class initialization"];
41 [label="Exit class A" style="filled" fillcolor=red]; 41 [label="Exit class A" style="filled" fillcolor=red];
} }
@@ -133,7 +129,7 @@ digraph smartcastToNothing_kt {
40 -> {52} [color=green]; 40 -> {52} [color=green];
40 -> {52} [style=dashed]; 40 -> {52} [style=dashed];
subgraph cluster_13 { subgraph cluster_11 {
color=red color=red
42 [label="Enter function <init>" style="filled" fillcolor=red]; 42 [label="Enter function <init>" style="filled" fillcolor=red];
43 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 43 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -142,14 +138,14 @@ digraph smartcastToNothing_kt {
42 -> {43}; 42 -> {43};
43 -> {44}; 43 -> {44};
subgraph cluster_14 { subgraph cluster_12 {
color=red color=red
45 [label="Enter function getter" style="filled" fillcolor=red]; 45 [label="Enter function getter" style="filled" fillcolor=red];
46 [label="Exit function getter" style="filled" fillcolor=red]; 46 [label="Exit function getter" style="filled" fillcolor=red];
} }
45 -> {46}; 45 -> {46};
subgraph cluster_15 { subgraph cluster_13 {
color=red color=red
47 [label="Enter property" style="filled" fillcolor=red]; 47 [label="Enter property" style="filled" fillcolor=red];
48 [label="Const: Int(1)"]; 48 [label="Const: Int(1)"];
@@ -159,14 +155,14 @@ digraph smartcastToNothing_kt {
48 -> {49}; 48 -> {49};
49 -> {40} [color=green]; 49 -> {40} [color=green];
subgraph cluster_16 { subgraph cluster_14 {
color=red color=red
50 [label="Enter function getter" style="filled" fillcolor=red]; 50 [label="Enter function getter" style="filled" fillcolor=red];
51 [label="Exit function getter" style="filled" fillcolor=red]; 51 [label="Exit function getter" style="filled" fillcolor=red];
} }
50 -> {51}; 50 -> {51};
subgraph cluster_17 { subgraph cluster_15 {
color=red color=red
52 [label="Enter property" style="filled" fillcolor=red]; 52 [label="Enter property" style="filled" fillcolor=red];
53 [label="Const: Boolean(true)"]; 53 [label="Const: Boolean(true)"];
@@ -176,10 +172,10 @@ digraph smartcastToNothing_kt {
53 -> {54}; 53 -> {54};
54 -> {41} [color=green]; 54 -> {41} [color=green];
subgraph cluster_18 { subgraph cluster_16 {
color=red color=red
55 [label="Enter function test_0" style="filled" fillcolor=red]; 55 [label="Enter function test_0" style="filled" fillcolor=red];
subgraph cluster_19 { subgraph cluster_17 {
color=blue color=blue
56 [label="Enter block"]; 56 [label="Enter block"];
57 [label="Const: Null(null)"]; 57 [label="Const: Null(null)"];
@@ -187,20 +183,20 @@ digraph smartcastToNothing_kt {
59 [label="Access variable R|<local>/results|"]; 59 [label="Access variable R|<local>/results|"];
60 [label="Function call: R|<local>/results|.R|FakeOverride<kotlin/collections/List.iterator: R|kotlin/collections/Iterator<kotlin/Nothing>|>|()"]; 60 [label="Function call: R|<local>/results|.R|FakeOverride<kotlin/collections/List.iterator: R|kotlin/collections/Iterator<kotlin/Nothing>|>|()"];
61 [label="Variable declaration: lval <iterator>: R|kotlin/collections/Iterator<kotlin/Nothing>|"]; 61 [label="Variable declaration: lval <iterator>: R|kotlin/collections/Iterator<kotlin/Nothing>|"];
subgraph cluster_20 { subgraph cluster_18 {
color=blue color=blue
62 [label="Enter while loop"]; 62 [label="Enter while loop"];
subgraph cluster_21 { subgraph cluster_19 {
color=blue color=blue
63 [label="Enter loop condition"]; 63 [label="Enter loop condition"];
64 [label="Access variable R|<local>/<iterator>|"]; 64 [label="Access variable R|<local>/<iterator>|"];
65 [label="Function call: R|<local>/<iterator>|.R|kotlin/collections/Iterator.hasNext|()"]; 65 [label="Function call: R|<local>/<iterator>|.R|kotlin/collections/Iterator.hasNext|()"];
66 [label="Exit loop condition"]; 66 [label="Exit loop condition"];
} }
subgraph cluster_22 { subgraph cluster_20 {
color=blue color=blue
67 [label="Enter loop block"]; 67 [label="Enter loop block"];
subgraph cluster_23 { subgraph cluster_21 {
color=blue color=blue
68 [label="Enter block"]; 68 [label="Enter block"];
69 [label="Access variable R|<local>/<iterator>|"]; 69 [label="Access variable R|<local>/<iterator>|"];
@@ -210,10 +206,10 @@ digraph smartcastToNothing_kt {
73 [label="Access variable R|<local>/result|" style="filled" fillcolor=gray]; 73 [label="Access variable R|<local>/result|" style="filled" fillcolor=gray];
74 [label="Stub" style="filled" fillcolor=gray]; 74 [label="Stub" style="filled" fillcolor=gray];
75 [label="Assignment: R|<local>/s|" style="filled" fillcolor=gray]; 75 [label="Assignment: R|<local>/s|" style="filled" fillcolor=gray];
subgraph cluster_24 { subgraph cluster_22 {
color=blue color=blue
76 [label="Enter when" style="filled" fillcolor=gray]; 76 [label="Enter when" style="filled" fillcolor=gray];
subgraph cluster_25 { subgraph cluster_23 {
color=blue color=blue
77 [label="Enter when branch condition " style="filled" fillcolor=gray]; 77 [label="Enter when branch condition " style="filled" fillcolor=gray];
78 [label="Access variable R|<local>/result|" style="filled" fillcolor=gray]; 78 [label="Access variable R|<local>/result|" style="filled" fillcolor=gray];
@@ -223,7 +219,7 @@ digraph smartcastToNothing_kt {
} }
82 [label="Synthetic else branch" style="filled" fillcolor=gray]; 82 [label="Synthetic else branch" style="filled" fillcolor=gray];
83 [label="Enter when branch result" style="filled" fillcolor=gray]; 83 [label="Enter when branch result" style="filled" fillcolor=gray];
subgraph cluster_26 { subgraph cluster_24 {
color=blue color=blue
84 [label="Enter block" style="filled" fillcolor=gray]; 84 [label="Enter block" style="filled" fillcolor=gray];
85 [label="Jump: break@@@[R|<local>/<iterator>|.R|kotlin/collections/Iterator.hasNext|()] " style="filled" fillcolor=gray]; 85 [label="Jump: break@@@[R|<local>/<iterator>|.R|kotlin/collections/Iterator.hasNext|()] " style="filled" fillcolor=gray];
@@ -242,10 +238,10 @@ digraph smartcastToNothing_kt {
93 [label="Access variable R|<local>/s|"]; 93 [label="Access variable R|<local>/s|"];
94 [label="Enter safe call"]; 94 [label="Enter safe call"];
95 [label="Postponed enter to lambda"]; 95 [label="Postponed enter to lambda"];
subgraph cluster_27 { subgraph cluster_25 {
color=blue color=blue
102 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 102 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_28 { subgraph cluster_26 {
color=blue color=blue
103 [label="Enter block"]; 103 [label="Enter block"];
104 [label="Access variable R|<local>/it|"]; 104 [label="Access variable R|<local>/it|"];
@@ -319,4 +315,4 @@ digraph smartcastToNothing_kt {
107 -> {96} [color=red]; 107 -> {96} [color=red];
107 -> {97} [color=green]; 107 -> {97} [color=green];
} }
@@ -6,8 +6,6 @@ digraph overridenOpenVal_kt {
subgraph cluster_0 { subgraph cluster_0 {
color=red color=red
0 [label="Enter class A" style="filled" fillcolor=red]; 0 [label="Enter class A" style="filled" fillcolor=red];
subgraph cluster_1 {
color=blue
1 [label="Part of class initialization"]; 1 [label="Part of class initialization"];
2 [label="Exit class A" style="filled" fillcolor=red]; 2 [label="Exit class A" style="filled" fillcolor=red];
} }
@@ -16,7 +14,7 @@ digraph overridenOpenVal_kt {
1 -> {8} [color=green]; 1 -> {8} [color=green];
1 -> {8} [style=dashed]; 1 -> {8} [style=dashed];
subgraph cluster_2 { subgraph cluster_1 {
color=red color=red
3 [label="Enter function <init>" style="filled" fillcolor=red]; 3 [label="Enter function <init>" style="filled" fillcolor=red];
4 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 4 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -25,14 +23,14 @@ digraph overridenOpenVal_kt {
3 -> {4}; 3 -> {4};
4 -> {5}; 4 -> {5};
subgraph cluster_3 { subgraph cluster_2 {
color=red color=red
6 [label="Enter function getter" style="filled" fillcolor=red]; 6 [label="Enter function getter" style="filled" fillcolor=red];
7 [label="Exit function getter" style="filled" fillcolor=red]; 7 [label="Exit function getter" style="filled" fillcolor=red];
} }
6 -> {7}; 6 -> {7};
subgraph cluster_4 { subgraph cluster_3 {
color=red color=red
8 [label="Enter property" style="filled" fillcolor=red]; 8 [label="Enter property" style="filled" fillcolor=red];
9 [label="Access variable R|<local>/x|"]; 9 [label="Access variable R|<local>/x|"];
@@ -42,14 +40,14 @@ digraph overridenOpenVal_kt {
9 -> {10}; 9 -> {10};
10 -> {2} [color=green]; 10 -> {2} [color=green];
subgraph cluster_5 { subgraph cluster_4 {
color=red color=red
11 [label="Enter class B" style="filled" fillcolor=red]; 11 [label="Enter class B" style="filled" fillcolor=red];
12 [label="Exit class B" style="filled" fillcolor=red]; 12 [label="Exit class B" style="filled" fillcolor=red];
} }
11 -> {12} [color=green]; 11 -> {12} [color=green];
subgraph cluster_6 { subgraph cluster_5 {
color=red color=red
13 [label="Enter function <init>" style="filled" fillcolor=red]; 13 [label="Enter function <init>" style="filled" fillcolor=red];
14 [label="Access variable R|<local>/x|"]; 14 [label="Access variable R|<local>/x|"];
@@ -60,16 +58,16 @@ digraph overridenOpenVal_kt {
14 -> {15}; 14 -> {15};
15 -> {16}; 15 -> {16};
subgraph cluster_7 { subgraph cluster_6 {
color=red color=red
17 [label="Enter function test_1" style="filled" fillcolor=red]; 17 [label="Enter function test_1" style="filled" fillcolor=red];
subgraph cluster_8 { subgraph cluster_7 {
color=blue color=blue
18 [label="Enter block"]; 18 [label="Enter block"];
subgraph cluster_9 { subgraph cluster_8 {
color=blue color=blue
19 [label="Enter when"]; 19 [label="Enter when"];
subgraph cluster_10 { subgraph cluster_9 {
color=blue color=blue
20 [label="Enter when branch condition "]; 20 [label="Enter when branch condition "];
21 [label="Access variable R|/A.x|"]; 21 [label="Access variable R|/A.x|"];
@@ -78,7 +76,7 @@ digraph overridenOpenVal_kt {
} }
24 [label="Synthetic else branch"]; 24 [label="Synthetic else branch"];
25 [label="Enter when branch result"]; 25 [label="Enter when branch result"];
subgraph cluster_11 { subgraph cluster_10 {
color=blue color=blue
26 [label="Enter block"]; 26 [label="Enter block"];
27 [label="Access variable R|/A.x|"]; 27 [label="Access variable R|/A.x|"];
@@ -109,16 +107,16 @@ digraph overridenOpenVal_kt {
31 -> {32}; 31 -> {32};
32 -> {33}; 32 -> {33};
subgraph cluster_12 { subgraph cluster_11 {
color=red color=red
34 [label="Enter function test_2" style="filled" fillcolor=red]; 34 [label="Enter function test_2" style="filled" fillcolor=red];
subgraph cluster_13 { subgraph cluster_12 {
color=blue color=blue
35 [label="Enter block"]; 35 [label="Enter block"];
subgraph cluster_14 { subgraph cluster_13 {
color=blue color=blue
36 [label="Enter when"]; 36 [label="Enter when"];
subgraph cluster_15 { subgraph cluster_14 {
color=blue color=blue
37 [label="Enter when branch condition "]; 37 [label="Enter when branch condition "];
38 [label="Access variable R|<local>/b|"]; 38 [label="Access variable R|<local>/b|"];
@@ -128,7 +126,7 @@ digraph overridenOpenVal_kt {
} }
42 [label="Synthetic else branch"]; 42 [label="Synthetic else branch"];
43 [label="Enter when branch result"]; 43 [label="Enter when branch result"];
subgraph cluster_16 { subgraph cluster_15 {
color=blue color=blue
44 [label="Enter block"]; 44 [label="Enter block"];
45 [label="Access variable R|<local>/b|"]; 45 [label="Access variable R|<local>/b|"];
@@ -162,4 +160,4 @@ digraph overridenOpenVal_kt {
50 -> {51}; 50 -> {51};
51 -> {52}; 51 -> {52};
} }
@@ -21,11 +21,7 @@ digraph inAnonymousObject_kt {
subgraph cluster_2 { subgraph cluster_2 {
color=blue color=blue
9 [label="Enter class <anonymous object>" style="filled" fillcolor=red]; 9 [label="Enter class <anonymous object>" style="filled" fillcolor=red];
subgraph cluster_3 {
color=blue
10 [label="Part of class initialization"]; 10 [label="Part of class initialization"];
subgraph cluster_4 {
color=blue
11 [label="Part of class initialization"]; 11 [label="Part of class initialization"];
12 [label="Exit class <anonymous object>" style="filled" fillcolor=red]; 12 [label="Exit class <anonymous object>" style="filled" fillcolor=red];
} }
@@ -48,7 +44,7 @@ digraph inAnonymousObject_kt {
11 -> {23} [color=green]; 11 -> {23} [color=green];
11 -> {23} [style=dashed]; 11 -> {23} [style=dashed];
subgraph cluster_5 { subgraph cluster_3 {
color=red color=red
13 [label="Enter function <init>" style="filled" fillcolor=red]; 13 [label="Enter function <init>" style="filled" fillcolor=red];
14 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 14 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -57,14 +53,14 @@ digraph inAnonymousObject_kt {
13 -> {14}; 13 -> {14};
14 -> {15}; 14 -> {15};
subgraph cluster_6 { subgraph cluster_4 {
color=red color=red
16 [label="Enter function getter" style="filled" fillcolor=red]; 16 [label="Enter function getter" style="filled" fillcolor=red];
17 [label="Exit function getter" style="filled" fillcolor=red]; 17 [label="Exit function getter" style="filled" fillcolor=red];
} }
16 -> {17}; 16 -> {17};
subgraph cluster_7 { subgraph cluster_5 {
color=red color=red
18 [label="Enter property" style="filled" fillcolor=red]; 18 [label="Enter property" style="filled" fillcolor=red];
19 [label="Access variable R|<local>/a|"]; 19 [label="Access variable R|<local>/a|"];
@@ -74,17 +70,17 @@ digraph inAnonymousObject_kt {
19 -> {20}; 19 -> {20};
20 -> {11} [color=green]; 20 -> {11} [color=green];
subgraph cluster_8 { subgraph cluster_6 {
color=red color=red
21 [label="Enter function getter" style="filled" fillcolor=red]; 21 [label="Enter function getter" style="filled" fillcolor=red];
22 [label="Exit function getter" style="filled" fillcolor=red]; 22 [label="Exit function getter" style="filled" fillcolor=red];
} }
21 -> {22}; 21 -> {22};
subgraph cluster_9 { subgraph cluster_7 {
color=red color=red
23 [label="Enter init block" style="filled" fillcolor=red]; 23 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_10 { subgraph cluster_8 {
color=blue color=blue
24 [label="Enter block"]; 24 [label="Enter block"];
25 [label="Access variable R|<local>/b|"]; 25 [label="Access variable R|<local>/b|"];
@@ -100,10 +96,10 @@ digraph inAnonymousObject_kt {
27 -> {28}; 27 -> {28};
28 -> {12} [color=green]; 28 -> {12} [color=green];
subgraph cluster_11 { subgraph cluster_9 {
color=red color=red
29 [label="Enter function run" style="filled" fillcolor=red]; 29 [label="Enter function run" style="filled" fillcolor=red];
subgraph cluster_12 { subgraph cluster_10 {
color=blue color=blue
30 [label="Enter block"]; 30 [label="Enter block"];
31 [label="Function call: R|<local>/c|.R|FakeOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()"]; 31 [label="Function call: R|<local>/c|.R|FakeOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()"];
@@ -116,4 +112,4 @@ digraph inAnonymousObject_kt {
31 -> {32}; 31 -> {32};
32 -> {33}; 32 -> {33};
} }
@@ -20,11 +20,7 @@ digraph inLocalClass_kt {
subgraph cluster_2 { subgraph cluster_2 {
color=blue color=blue
8 [label="Enter class LocalClass" style="filled" fillcolor=red]; 8 [label="Enter class LocalClass" style="filled" fillcolor=red];
subgraph cluster_3 {
color=blue
9 [label="Part of class initialization"]; 9 [label="Part of class initialization"];
subgraph cluster_4 {
color=blue
10 [label="Part of class initialization"]; 10 [label="Part of class initialization"];
11 [label="Exit class LocalClass" style="filled" fillcolor=red]; 11 [label="Exit class LocalClass" style="filled" fillcolor=red];
} }
@@ -46,14 +42,14 @@ digraph inLocalClass_kt {
10 -> {25} [color=green]; 10 -> {25} [color=green];
10 -> {25} [style=dashed]; 10 -> {25} [style=dashed];
subgraph cluster_5 { subgraph cluster_3 {
color=red color=red
12 [label="Enter function getter" style="filled" fillcolor=red]; 12 [label="Enter function getter" style="filled" fillcolor=red];
13 [label="Exit function getter" style="filled" fillcolor=red]; 13 [label="Exit function getter" style="filled" fillcolor=red];
} }
12 -> {13}; 12 -> {13};
subgraph cluster_6 { subgraph cluster_4 {
color=red color=red
14 [label="Enter property" style="filled" fillcolor=red]; 14 [label="Enter property" style="filled" fillcolor=red];
15 [label="Access variable R|<local>/a|"]; 15 [label="Access variable R|<local>/a|"];
@@ -63,18 +59,18 @@ digraph inLocalClass_kt {
15 -> {16}; 15 -> {16};
16 -> {10} [color=green]; 16 -> {10} [color=green];
subgraph cluster_7 { subgraph cluster_5 {
color=red color=red
17 [label="Enter function getter" style="filled" fillcolor=red]; 17 [label="Enter function getter" style="filled" fillcolor=red];
18 [label="Exit function getter" style="filled" fillcolor=red]; 18 [label="Exit function getter" style="filled" fillcolor=red];
} }
17 -> {18}; 17 -> {18};
subgraph cluster_8 { subgraph cluster_6 {
color=red color=red
19 [label="Enter function <init>" style="filled" fillcolor=red]; 19 [label="Enter function <init>" style="filled" fillcolor=red];
20 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 20 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
subgraph cluster_9 { subgraph cluster_7 {
color=blue color=blue
21 [label="Enter block"]; 21 [label="Enter block"];
22 [label="Function call: R|<local>/b|.R|FakeOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()"]; 22 [label="Function call: R|<local>/b|.R|FakeOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()"];
@@ -88,10 +84,10 @@ digraph inLocalClass_kt {
22 -> {23}; 22 -> {23};
23 -> {24}; 23 -> {24};
subgraph cluster_10 { subgraph cluster_8 {
color=red color=red
25 [label="Enter init block" style="filled" fillcolor=red]; 25 [label="Enter init block" style="filled" fillcolor=red];
subgraph cluster_11 { subgraph cluster_9 {
color=blue color=blue
26 [label="Enter block"]; 26 [label="Enter block"];
27 [label="Access variable R|<local>/c|"]; 27 [label="Access variable R|<local>/c|"];
@@ -107,10 +103,10 @@ digraph inLocalClass_kt {
29 -> {30}; 29 -> {30};
30 -> {11} [color=green]; 30 -> {11} [color=green];
subgraph cluster_12 { subgraph cluster_10 {
color=red color=red
31 [label="Enter function run" style="filled" fillcolor=red]; 31 [label="Enter function run" style="filled" fillcolor=red];
subgraph cluster_13 { subgraph cluster_11 {
color=blue color=blue
32 [label="Enter block"]; 32 [label="Enter block"];
33 [label="Function call: R|<local>/d|.R|FakeOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()"]; 33 [label="Function call: R|<local>/d|.R|FakeOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()"];
@@ -123,4 +119,4 @@ digraph inLocalClass_kt {
33 -> {34}; 33 -> {34};
34 -> {35}; 34 -> {35};
} }
@@ -75,8 +75,6 @@ digraph delegateWithAnonymousObject_kt {
subgraph cluster_8 { subgraph cluster_8 {
color=red color=red
22 [label="Enter class IssuesListUserProfile" style="filled" fillcolor=red]; 22 [label="Enter class IssuesListUserProfile" style="filled" fillcolor=red];
subgraph cluster_9 {
color=blue
23 [label="Part of class initialization"]; 23 [label="Part of class initialization"];
24 [label="Exit class IssuesListUserProfile" style="filled" fillcolor=red]; 24 [label="Exit class IssuesListUserProfile" style="filled" fillcolor=red];
} }
@@ -85,7 +83,7 @@ digraph delegateWithAnonymousObject_kt {
23 -> {71} [color=green]; 23 -> {71} [color=green];
23 -> {71} [style=dashed]; 23 -> {71} [style=dashed];
subgraph cluster_10 { subgraph cluster_9 {
color=red color=red
25 [label="Enter function <init>" style="filled" fillcolor=red]; 25 [label="Enter function <init>" style="filled" fillcolor=red];
26 [label="Delegated constructor call: super<R|DelegateProvider<IssuesListUserProfile>|>()"]; 26 [label="Delegated constructor call: super<R|DelegateProvider<IssuesListUserProfile>|>()"];
@@ -94,7 +92,7 @@ digraph delegateWithAnonymousObject_kt {
25 -> {26}; 25 -> {26};
26 -> {27}; 26 -> {27};
subgraph cluster_11 { subgraph cluster_10 {
color=red color=red
35 [label="Enter function <init>" style="filled" fillcolor=red]; 35 [label="Enter function <init>" style="filled" fillcolor=red];
36 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 36 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -103,10 +101,10 @@ digraph delegateWithAnonymousObject_kt {
35 -> {36}; 35 -> {36};
36 -> {37}; 36 -> {37};
subgraph cluster_12 { subgraph cluster_11 {
color=red color=red
38 [label="Enter function getValue" style="filled" fillcolor=red]; 38 [label="Enter function getValue" style="filled" fillcolor=red];
subgraph cluster_13 { subgraph cluster_12 {
color=blue color=blue
39 [label="Enter block"]; 39 [label="Enter block"];
40 [label="Function call: R|/IssueListView.IssueListView|()"]; 40 [label="Function call: R|/IssueListView.IssueListView|()"];
@@ -124,10 +122,10 @@ digraph delegateWithAnonymousObject_kt {
42 -> {43} [style=dotted]; 42 -> {43} [style=dotted];
43 -> {44} [style=dotted]; 43 -> {44} [style=dotted];
subgraph cluster_14 { subgraph cluster_13 {
color=red color=red
45 [label="Enter function setValue" style="filled" fillcolor=red]; 45 [label="Enter function setValue" style="filled" fillcolor=red];
subgraph cluster_15 { subgraph cluster_14 {
color=blue color=blue
46 [label="Enter block"]; 46 [label="Enter block"];
47 [label="Function call: R|/IssueListView.IssueListView|()"]; 47 [label="Function call: R|/IssueListView.IssueListView|()"];
@@ -149,10 +147,10 @@ digraph delegateWithAnonymousObject_kt {
51 -> {52} [style=dotted]; 51 -> {52} [style=dotted];
52 -> {53} [style=dotted]; 52 -> {53} [style=dotted];
subgraph cluster_16 { subgraph cluster_15 {
color=red color=red
54 [label="Enter function getter" style="filled" fillcolor=red]; 54 [label="Enter function getter" style="filled" fillcolor=red];
subgraph cluster_17 { subgraph cluster_16 {
color=blue color=blue
55 [label="Enter block"]; 55 [label="Enter block"];
56 [label="Access variable D|/IssuesListUserProfile.issueListView|"]; 56 [label="Access variable D|/IssuesListUserProfile.issueListView|"];
@@ -174,10 +172,10 @@ digraph delegateWithAnonymousObject_kt {
60 -> {61} [style=dotted]; 60 -> {61} [style=dotted];
61 -> {62} [style=dotted]; 61 -> {62} [style=dotted];
subgraph cluster_18 { subgraph cluster_17 {
color=red color=red
63 [label="Enter function setter" style="filled" fillcolor=red]; 63 [label="Enter function setter" style="filled" fillcolor=red];
subgraph cluster_19 { subgraph cluster_18 {
color=blue color=blue
64 [label="Enter block"]; 64 [label="Enter block"];
65 [label="Access variable D|/IssuesListUserProfile.issueListView|"]; 65 [label="Access variable D|/IssuesListUserProfile.issueListView|"];
@@ -196,7 +194,7 @@ digraph delegateWithAnonymousObject_kt {
68 -> {69}; 68 -> {69};
69 -> {70}; 69 -> {70};
subgraph cluster_20 { subgraph cluster_19 {
color=red color=red
71 [label="Enter property" style="filled" fillcolor=red]; 71 [label="Enter property" style="filled" fillcolor=red];
72 [label="Postponed enter to lambda"]; 72 [label="Postponed enter to lambda"];
@@ -205,10 +203,10 @@ digraph delegateWithAnonymousObject_kt {
75 [label="Access variable this@R|/IssuesListUserProfile|"]; 75 [label="Access variable this@R|/IssuesListUserProfile|"];
76 [label="Function call: this@R|/IssuesListUserProfile|.R|/delegate|<R|IssuesListUserProfile|, R|IssuesListUserProfile|, R|IssueListView|>(...).<Unresolved name: provideDelegate>#(...)"]; 76 [label="Function call: this@R|/IssuesListUserProfile|.R|/delegate|<R|IssuesListUserProfile|, R|IssuesListUserProfile|, R|IssueListView|>(...).<Unresolved name: provideDelegate>#(...)"];
77 [label="Postponed enter to lambda"]; 77 [label="Postponed enter to lambda"];
subgraph cluster_21 { subgraph cluster_20 {
color=blue color=blue
28 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 28 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_22 { subgraph cluster_21 {
color=blue color=blue
29 [label="Enter block"]; 29 [label="Enter block"];
30 [label="Exit anonymous object"]; 30 [label="Exit anonymous object"];
@@ -216,7 +214,7 @@ digraph delegateWithAnonymousObject_kt {
} }
32 [label="Exit function anonymousFunction" style="filled" fillcolor=red]; 32 [label="Exit function anonymousFunction" style="filled" fillcolor=red];
} }
subgraph cluster_23 { subgraph cluster_22 {
color=blue color=blue
33 [label="Enter class <anonymous object>" style="filled" fillcolor=red]; 33 [label="Enter class <anonymous object>" style="filled" fillcolor=red];
34 [label="Exit class <anonymous object>" style="filled" fillcolor=red]; 34 [label="Exit class <anonymous object>" style="filled" fillcolor=red];
@@ -246,4 +244,4 @@ digraph delegateWithAnonymousObject_kt {
31 -> {32}; 31 -> {32};
33 -> {34} [color=green]; 33 -> {34} [color=green];
} }
@@ -53,8 +53,6 @@ digraph plusAssignWithLambdaInRhs_kt {
subgraph cluster_4 { subgraph cluster_4 {
color=red color=red
16 [label="Enter class A" style="filled" fillcolor=red]; 16 [label="Enter class A" style="filled" fillcolor=red];
subgraph cluster_5 {
color=blue
17 [label="Part of class initialization"]; 17 [label="Part of class initialization"];
18 [label="Exit class A" style="filled" fillcolor=red]; 18 [label="Exit class A" style="filled" fillcolor=red];
} }
@@ -63,7 +61,7 @@ digraph plusAssignWithLambdaInRhs_kt {
17 -> {24} [color=green]; 17 -> {24} [color=green];
17 -> {24} [style=dashed]; 17 -> {24} [style=dashed];
subgraph cluster_6 { subgraph cluster_5 {
color=red color=red
19 [label="Enter function <init>" style="filled" fillcolor=red]; 19 [label="Enter function <init>" style="filled" fillcolor=red];
20 [label="Delegated constructor call: super<R|kotlin/Any|>()"]; 20 [label="Delegated constructor call: super<R|kotlin/Any|>()"];
@@ -72,14 +70,14 @@ digraph plusAssignWithLambdaInRhs_kt {
19 -> {20}; 19 -> {20};
20 -> {21}; 20 -> {21};
subgraph cluster_7 { subgraph cluster_6 {
color=red color=red
22 [label="Enter function getter" style="filled" fillcolor=red]; 22 [label="Enter function getter" style="filled" fillcolor=red];
23 [label="Exit function getter" style="filled" fillcolor=red]; 23 [label="Exit function getter" style="filled" fillcolor=red];
} }
22 -> {23}; 22 -> {23};
subgraph cluster_8 { subgraph cluster_7 {
color=red color=red
24 [label="Enter property" style="filled" fillcolor=red]; 24 [label="Enter property" style="filled" fillcolor=red];
25 [label="Access variable R|<local>/executor|"]; 25 [label="Access variable R|<local>/executor|"];
@@ -89,27 +87,27 @@ digraph plusAssignWithLambdaInRhs_kt {
25 -> {26}; 25 -> {26};
26 -> {18} [color=green]; 26 -> {18} [color=green];
subgraph cluster_9 { subgraph cluster_8 {
color=red color=red
27 [label="Enter function postpone" style="filled" fillcolor=red]; 27 [label="Enter function postpone" style="filled" fillcolor=red];
subgraph cluster_10 { subgraph cluster_9 {
color=blue color=blue
28 [label="Enter block"]; 28 [label="Enter block"];
29 [label="Function call: R|kotlin/collections/mutableListOf|<R|() -> kotlin/Unit|>()"]; 29 [label="Function call: R|kotlin/collections/mutableListOf|<R|() -> kotlin/Unit|>()"];
30 [label="Variable declaration: lval queue: R|kotlin/collections/MutableList<kotlin/Function0<kotlin/Unit>>|"]; 30 [label="Variable declaration: lval queue: R|kotlin/collections/MutableList<kotlin/Function0<kotlin/Unit>>|"];
31 [label="Postponed enter to lambda"]; 31 [label="Postponed enter to lambda"];
subgraph cluster_11 { subgraph cluster_10 {
color=blue color=blue
38 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 38 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_12 { subgraph cluster_11 {
color=blue color=blue
39 [label="Enter block"]; 39 [label="Enter block"];
40 [label="Access variable R|<local>/queue|"]; 40 [label="Access variable R|<local>/queue|"];
41 [label="Postponed enter to lambda"]; 41 [label="Postponed enter to lambda"];
subgraph cluster_13 { subgraph cluster_12 {
color=blue color=blue
46 [label="Enter function anonymousFunction" style="filled" fillcolor=red]; 46 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
subgraph cluster_14 { subgraph cluster_13 {
color=blue color=blue
47 [label="Enter block"]; 47 [label="Enter block"];
48 [label="Function call: R|<local>/computation|.R|FakeOverride<kotlin/Function0.invoke: R|T|>|()"]; 48 [label="Function call: R|<local>/computation|.R|FakeOverride<kotlin/Function0.invoke: R|T|>|()"];
@@ -167,4 +165,4 @@ digraph plusAssignWithLambdaInRhs_kt {
51 -> {42} [color=green]; 51 -> {42} [color=green];
51 -> {46} [color=green style=dashed]; 51 -> {46} [color=green style=dashed];
} }
@@ -232,7 +232,7 @@ class AnonymousObjectExitNode(owner: ControlFlowGraph, override val fir: FirAnon
// ----------------------------------- Initialization ----------------------------------- // ----------------------------------- Initialization -----------------------------------
class PartOfClassInitializationNode(owner: ControlFlowGraph, override val fir: FirControlFlowGraphOwner, level: Int, id: Int) : CFGNodeWithCfgOwner<FirControlFlowGraphOwner>(owner, level, id), EnterNodeMarker { class PartOfClassInitializationNode(owner: ControlFlowGraph, override val fir: FirControlFlowGraphOwner, level: Int, id: Int) : CFGNodeWithCfgOwner<FirControlFlowGraphOwner>(owner, level, id) {
override fun <R, D> accept(visitor: ControlFlowGraphVisitor<R, D>, data: D): R { override fun <R, D> accept(visitor: ControlFlowGraphVisitor<R, D>, data: D): R {
return visitor.visitPartOfClassInitializationNode(this, data) return visitor.visitPartOfClassInitializationNode(this, data)
} }