Skip to content

Commit 2671c98

Browse files
JasinYipnicolo-ribaudo
authored andcommitted
Fix duplicate exports initialization with many exports (#14313)
1 parent 7ff3084 commit 2671c98

4 files changed

Lines changed: 763 additions & 5 deletions

File tree

packages/babel-helper-module-transforms/src/index.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -464,11 +464,8 @@ function buildExportInitializationStatements(
464464
// We generate init statements (`exports.a = exports.b = ... = void 0`)
465465
// for every 100 exported names to avoid deeply-nested AST structures.
466466
const chunkSize = 100;
467-
for (
468-
let i = 0, uninitializedExportNames = [];
469-
i < initStatements.length;
470-
i += chunkSize
471-
) {
467+
for (let i = 0; i < initStatements.length; i += chunkSize) {
468+
let uninitializedExportNames = [];
472469
for (let j = 0; j < chunkSize && i + j < initStatements.length; j++) {
473470
const [exportName, initStatement] = initStatements[i + j];
474471
if (initStatement !== null) {
Lines changed: 250 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,250 @@
1+
export const a000 = 0;
2+
export const a001 = 1;
3+
export const a002 = 2;
4+
export const a003 = 3;
5+
export const a004 = 4;
6+
export const a005 = 5;
7+
export const a006 = 6;
8+
export const a007 = 7;
9+
export const a008 = 8;
10+
export const a009 = 9;
11+
export const a010 = 10;
12+
export const a011 = 11;
13+
export const a012 = 12;
14+
export const a013 = 13;
15+
export const a014 = 14;
16+
export const a015 = 15;
17+
export const a016 = 16;
18+
export const a017 = 17;
19+
export const a018 = 18;
20+
export const a019 = 19;
21+
export const a020 = 20;
22+
export const a021 = 21;
23+
export const a022 = 22;
24+
export const a023 = 23;
25+
export const a024 = 24;
26+
export const a025 = 25;
27+
export const a026 = 26;
28+
export const a027 = 27;
29+
export const a028 = 28;
30+
export const a029 = 29;
31+
export const a030 = 30;
32+
export const a031 = 31;
33+
export const a032 = 32;
34+
export const a033 = 33;
35+
export const a034 = 34;
36+
export const a035 = 35;
37+
export const a036 = 36;
38+
export const a037 = 37;
39+
export const a038 = 38;
40+
export const a039 = 39;
41+
export const a040 = 40;
42+
export const a041 = 41;
43+
export const a042 = 42;
44+
export const a043 = 43;
45+
export const a044 = 44;
46+
export const a045 = 45;
47+
export const a046 = 46;
48+
export const a047 = 47;
49+
export const a048 = 48;
50+
export const a049 = 49;
51+
export const a050 = 50;
52+
export const a051 = 51;
53+
export const a052 = 52;
54+
export const a053 = 53;
55+
export const a054 = 54;
56+
export const a055 = 55;
57+
export const a056 = 56;
58+
export const a057 = 57;
59+
export const a058 = 58;
60+
export const a059 = 59;
61+
export const a060 = 60;
62+
export const a061 = 61;
63+
export const a062 = 62;
64+
export const a063 = 63;
65+
export const a064 = 64;
66+
export const a065 = 65;
67+
export const a066 = 66;
68+
export const a067 = 67;
69+
export const a068 = 68;
70+
export const a069 = 69;
71+
export const a070 = 70;
72+
export const a071 = 71;
73+
export const a072 = 72;
74+
export const a073 = 73;
75+
export const a074 = 74;
76+
export const a075 = 75;
77+
export const a076 = 76;
78+
export const a077 = 77;
79+
export const a078 = 78;
80+
export const a079 = 79;
81+
export const a080 = 80;
82+
export const a081 = 81;
83+
export const a082 = 82;
84+
export const a083 = 83;
85+
export const a084 = 84;
86+
export const a085 = 85;
87+
export const a086 = 86;
88+
export const a087 = 87;
89+
export const a088 = 88;
90+
export const a089 = 89;
91+
export const a090 = 90;
92+
export const a091 = 91;
93+
export const a092 = 92;
94+
export const a093 = 93;
95+
export const a094 = 94;
96+
export const a095 = 95;
97+
export const a096 = 96;
98+
export const a097 = 97;
99+
export const a098 = 98;
100+
export const a099 = 99;
101+
export const a100 = 100;
102+
export const a101 = 101;
103+
export const a102 = 102;
104+
export const a103 = 103;
105+
export const a104 = 104;
106+
export const a105 = 105;
107+
export const a106 = 106;
108+
export const a107 = 107;
109+
export const a108 = 108;
110+
export const a109 = 109;
111+
export const a110 = 110;
112+
export const a111 = 111;
113+
export const a112 = 112;
114+
export const a113 = 113;
115+
export const a114 = 114;
116+
export const a115 = 115;
117+
export const a116 = 116;
118+
export const a117 = 117;
119+
export const a118 = 118;
120+
export const a119 = 119;
121+
export const a120 = 120;
122+
export const a121 = 121;
123+
export const a122 = 122;
124+
export const a123 = 123;
125+
export const a124 = 124;
126+
export const a125 = 125;
127+
export const a126 = 126;
128+
export const a127 = 127;
129+
export const a128 = 128;
130+
export const a129 = 129;
131+
export const a130 = 130;
132+
export const a131 = 131;
133+
export const a132 = 132;
134+
export const a133 = 133;
135+
export const a134 = 134;
136+
export const a135 = 135;
137+
export const a136 = 136;
138+
export const a137 = 137;
139+
export const a138 = 138;
140+
export const a139 = 139;
141+
export const a140 = 140;
142+
export const a141 = 141;
143+
export const a142 = 142;
144+
export const a143 = 143;
145+
export const a144 = 144;
146+
export const a145 = 145;
147+
export const a146 = 146;
148+
export const a147 = 147;
149+
export const a148 = 148;
150+
export const a149 = 149;
151+
export const a150 = 150;
152+
export const a151 = 151;
153+
export const a152 = 152;
154+
export const a153 = 153;
155+
export const a154 = 154;
156+
export const a155 = 155;
157+
export const a156 = 156;
158+
export const a157 = 157;
159+
export const a158 = 158;
160+
export const a159 = 159;
161+
export const a160 = 160;
162+
export const a161 = 161;
163+
export const a162 = 162;
164+
export const a163 = 163;
165+
export const a164 = 164;
166+
export const a165 = 165;
167+
export const a166 = 166;
168+
export const a167 = 167;
169+
export const a168 = 168;
170+
export const a169 = 169;
171+
export const a170 = 170;
172+
export const a171 = 171;
173+
export const a172 = 172;
174+
export const a173 = 173;
175+
export const a174 = 174;
176+
export const a175 = 175;
177+
export const a176 = 176;
178+
export const a177 = 177;
179+
export const a178 = 178;
180+
export const a179 = 179;
181+
export const a180 = 180;
182+
export const a181 = 181;
183+
export const a182 = 182;
184+
export const a183 = 183;
185+
export const a184 = 184;
186+
export const a185 = 185;
187+
export const a186 = 186;
188+
export const a187 = 187;
189+
export const a188 = 188;
190+
export const a189 = 189;
191+
export const a190 = 190;
192+
export const a191 = 191;
193+
export const a192 = 192;
194+
export const a193 = 193;
195+
export const a194 = 194;
196+
export const a195 = 195;
197+
export const a196 = 196;
198+
export const a197 = 197;
199+
export const a198 = 198;
200+
export const a199 = 199;
201+
export const a200 = 200;
202+
export const a201 = 201;
203+
export const a202 = 202;
204+
export const a203 = 203;
205+
export const a204 = 204;
206+
export const a205 = 205;
207+
export const a206 = 206;
208+
export const a207 = 207;
209+
export const a208 = 208;
210+
export const a209 = 209;
211+
export const a210 = 210;
212+
export const a211 = 211;
213+
export const a212 = 212;
214+
export const a213 = 213;
215+
export const a214 = 214;
216+
export const a215 = 215;
217+
export const a216 = 216;
218+
export const a217 = 217;
219+
export const a218 = 218;
220+
export const a219 = 219;
221+
export const a220 = 220;
222+
export const a221 = 221;
223+
export const a222 = 222;
224+
export const a223 = 223;
225+
export const a224 = 224;
226+
export const a225 = 225;
227+
export const a226 = 226;
228+
export const a227 = 227;
229+
export const a228 = 228;
230+
export const a229 = 229;
231+
export const a230 = 230;
232+
export const a231 = 231;
233+
export const a232 = 232;
234+
export const a233 = 233;
235+
export const a234 = 234;
236+
export const a235 = 235;
237+
export const a236 = 236;
238+
export const a237 = 237;
239+
export const a238 = 238;
240+
export const a239 = 239;
241+
export const a240 = 240;
242+
export const a241 = 241;
243+
export const a242 = 242;
244+
export const a243 = 243;
245+
export const a244 = 244;
246+
export const a245 = 245;
247+
export const a246 = 246;
248+
export const a247 = 247;
249+
export const a248 = 248;
250+
export const a249 = 249;
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"plugins": ["transform-modules-commonjs"]
3+
}

0 commit comments

Comments
 (0)