Commit f943cad
[KT] Upgrade callable references before function inlining.
The J2clUpgradeCallableReferences pass is now run earlier in the lowering pipeline to ensure callable references are in the correct form before other passes, including function inlining.
Having `IrRichCallableReference` nodes in the IR tree before inlining allows for the removal of J2clInlineCallableReferenceToLambdaPhase and WrapInlineDeclarationsWithReifiedTypeParametersLowering.
We also need to run explicitly J2clUpgradeCallableReferences on inline function before the inlining. The serialized IR coming from Kotlin/JVM contains the old node to represent lambda and break their correct inlining.
PiperOrigin-RevId: 8868250911 parent 3f3d378 commit f943cad
File tree
4 files changed
+23
-28
lines changed- transpiler
- javatests/com/google/j2cl/readable/kotlin/localfunction/output_closure
- java/com/google/j2cl/transpiler/frontend/kotlin/lower
4 files changed
+23
-28
lines changedLines changed: 11 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
100 | 108 | | |
101 | 109 | | |
102 | 110 | | |
| |||
597 | 605 | | |
598 | 606 | | |
599 | 607 | | |
600 | | - | |
601 | | - | |
602 | | - | |
603 | | - | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
604 | 611 | | |
605 | 612 | | |
606 | 613 | | |
| |||
Lines changed: 2 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
19 | 20 | | |
20 | 21 | | |
21 | 22 | | |
| |||
28 | 29 | | |
29 | 30 | | |
30 | 31 | | |
31 | | - | |
| 32 | + | |
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
| |||
Lines changed: 3 additions & 16 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | 76 | | |
80 | 77 | | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
81 | 81 | | |
82 | 82 | | |
83 | 83 | | |
| |||
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | 92 | | |
102 | 93 | | |
103 | | - | |
104 | | - | |
105 | | - | |
106 | | - | |
107 | 94 | | |
108 | 95 | | |
109 | 96 | | |
| |||
Lines changed: 7 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
93 | | - | |
94 | | - | |
95 | | - | |
| 93 | + | |
96 | 94 | | |
97 | | - | |
| 95 | + | |
98 | 96 | | |
99 | | - | |
| 97 | + | |
100 | 98 | | |
101 | | - | |
102 | | - | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
| |||
0 commit comments