From 3b28af17dba6b6225c079dbf3f6c2a3903ee3981 Mon Sep 17 00:00:00 2001 From: Jarred Sumner Date: Thu, 7 Oct 2021 21:30:28 -0700 Subject: Fix edgecase when bundling JavaScript that references ESM exported functions before they're defined --- src/js_printer.zig | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/js_printer.zig b/src/js_printer.zig index 0a62df78b..95e8ea22c 100644 --- a/src/js_printer.zig +++ b/src/js_printer.zig @@ -2221,12 +2221,6 @@ pub fn NewPrinter( if (s.func.flags.is_export) { if (!rewrite_esm_to_cjs) { p.print("export "); - } else { - if (rewrite_esm_to_cjs) { - p.print("var "); - p.printSymbol(nameRef); - p.print(" = "); - } } } if (s.func.flags.is_async) { @@ -2244,6 +2238,11 @@ pub fn NewPrinter( if (rewrite_esm_to_cjs and s.func.flags.is_export) { p.printSemicolonAfterStatement(); + p.print("var "); + p.printSymbol(nameRef); + p.print(" = "); + p.printSymbol(nameRef); + p.printSemicolonAfterStatement(); } else { p.printNewline(); } @@ -2267,12 +2266,6 @@ pub fn NewPrinter( if (!rewrite_esm_to_cjs) { p.print("export "); } - - if (rewrite_esm_to_cjs) { - p.print("var "); - p.printSymbol(nameRef); - p.print(" = "); - } } p.print("class "); -- cgit v1.2.3