FIR DFA: use class enter node as data flow source for members

Also fix graphs for enums with specialized entries - since we don't
create property subgraphs for FirEnumEntry, there is no body to insert
AnonymousObjectEnterNode, AnonymousObjectExitNode, and
AnonymousObjectExpressionExitNode into.
This commit is contained in:
pyos
2022-12-10 19:18:15 +01:00
committed by Dmitriy Novozhilov
parent e6819e1295
commit 4bb7b1ac9f
12 changed files with 56 additions and 86 deletions
@@ -79,13 +79,12 @@ digraph annotatedLocalClass_kt {
16 -> {17} [style=dotted];
17 -> {18} [style=dotted];
18 -> {19};
18 -> {25} [color=red];
19 -> {20};
19 -> {23} [color=green];
19 -> {20 23};
19 -> {23} [style=dashed];
20 -> {21};
21 -> {22};
23 -> {24} [color=green];
23 -> {25} [color=red];
24 -> {25} [color=green];
24 -> {25} [style=dashed];
25 -> {26};
@@ -44,18 +44,19 @@ digraph innerClassInAnonymousObject_kt {
2 [label="Exit function <init>" style="filled" fillcolor=red];
}
14 -> {15};
14 -> {0 3 6} [color=red];
15 -> {12} [color=green];
15 -> {12};
15 -> {16} [color=red];
15 -> {12} [style=dashed];
16 -> {17};
17 -> {18};
12 -> {13} [color=green];
12 -> {0 10} [color=red];
13 -> {0 10 16} [color=green];
13 -> {0 10} [style=dashed];
0 -> {1};
1 -> {2};
10 -> {11} [color=green];
10 -> {3 6} [color=red];
11 -> {3 6} [color=green];
11 -> {3 6} [style=dashed];
3 -> {4};
@@ -351,12 +351,9 @@ digraph localClassesWithImplicit_kt {
19 -> {20} [style=dotted];
20 -> {21} [style=dotted];
21 -> {22};
21 -> {31 34 71 90} [color=red];
22 -> {23};
22 -> {29} [color=green];
22 -> {99 102 139 158} [color=red];
22 -> {23 29};
22 -> {29} [style=dashed];
23 -> {97} [color=green];
23 -> {97};
23 -> {24} [color=red];
23 -> {97} [style=dashed];
24 -> {25};
@@ -364,6 +361,7 @@ digraph localClassesWithImplicit_kt {
26 -> {27};
27 -> {28};
29 -> {30} [color=green];
29 -> {31 34 71 90} [color=red];
30 -> {31 34 71 90} [color=green];
30 -> {31 34 71 90} [style=dashed];
31 -> {32};
@@ -436,6 +434,7 @@ digraph localClassesWithImplicit_kt {
94 -> {95} [style=dotted];
95 -> {96} [style=dotted];
97 -> {98} [color=green];
97 -> {99 102 139 158} [color=red];
98 -> {24 99 102 139 158} [color=green];
98 -> {99 102 139 158} [style=dashed];
99 -> {100};
@@ -114,12 +114,11 @@ digraph propertiesAndInitBlocks_kt {
}
58 -> {59};
59 -> {60};
59 -> {66 73} [color=red];
60 -> {61};
60 -> {63} [color=green];
60 -> {61 63};
60 -> {63} [style=dashed];
61 -> {62};
63 -> {64} [color=green];
63 -> {66 73} [color=red];
64 -> {66} [color=green];
64 -> {65} [style=dotted];
64 -> {66} [style=dashed];
@@ -210,10 +209,8 @@ digraph propertiesAndInitBlocks_kt {
24 -> {25};
25 -> {26};
26 -> {27 33};
26 -> {47 55} [color=red];
26 -> {33} [style=dashed];
27 -> {28};
27 -> {44} [color=green];
27 -> {28 44};
27 -> {44} [style=dashed];
28 -> {29};
29 -> {30} [style=dotted];
@@ -231,6 +228,7 @@ digraph propertiesAndInitBlocks_kt {
41 -> {42} [style=dotted];
42 -> {43} [style=dotted];
44 -> {45} [color=green];
44 -> {47 55} [color=red];
45 -> {47} [color=green];
45 -> {46} [style=dotted];
45 -> {47} [style=dashed];
@@ -192,8 +192,7 @@ digraph smartcastInByClause_kt {
39 -> {40};
40 -> {41};
41 -> {42};
41 -> {53 59 64 67} [color=red];
42 -> {49} [color=green];
42 -> {49};
42 -> {43} [color=red];
42 -> {49} [style=dashed];
43 -> {44};
@@ -203,6 +202,7 @@ digraph smartcastInByClause_kt {
46 -> {47} [style=dotted];
47 -> {48} [style=dotted];
49 -> {50} [color=green];
49 -> {53 59 64 67} [color=red];
50 -> {53} [color=green];
50 -> {51} [style=dotted];
50 -> {53} [style=dashed];
@@ -71,8 +71,7 @@ digraph inAnonymousObject_kt {
1 -> {2};
2 -> {3};
3 -> {4};
3 -> {17 20 26 29} [color=red];
4 -> {13} [color=green];
4 -> {13};
4 -> {5} [color=red];
4 -> {13} [style=dashed];
5 -> {6};
@@ -83,6 +82,7 @@ digraph inAnonymousObject_kt {
10 -> {11};
11 -> {12};
13 -> {14} [color=green];
13 -> {17 20 26 29} [color=red];
14 -> {17} [color=green];
14 -> {15} [style=dotted];
14 -> {17} [style=dashed];
@@ -74,15 +74,14 @@ digraph inLocalClass_kt {
1 -> {2};
2 -> {3};
3 -> {4};
3 -> {14 17 23 29} [color=red];
4 -> {5};
4 -> {10} [color=green];
4 -> {5 10};
4 -> {10} [style=dashed];
5 -> {6};
6 -> {7};
7 -> {8};
8 -> {9};
10 -> {11} [color=green];
10 -> {14 17 23 29} [color=red];
11 -> {14} [color=green];
11 -> {12} [style=dotted];
11 -> {14} [style=dashed];
@@ -196,14 +196,14 @@ digraph delegateWithAnonymousObject_kt {
78 -> {81} [color=green];
26 -> {27};
27 -> {28};
27 -> {35 38 45} [color=red];
28 -> {33} [color=green];
28 -> {33};
28 -> {29} [color=red];
28 -> {33} [style=dashed];
29 -> {30};
30 -> {31};
31 -> {32};
33 -> {34} [color=green];
33 -> {35 38 45} [color=red];
34 -> {29 35 38 45} [color=green];
34 -> {35 38 45} [style=dashed];
35 -> {36};