diff options
author | 2022-12-15 23:41:40 -0800 | |
---|---|---|
committer | 2022-12-15 23:41:40 -0800 | |
commit | e399bceb3cfbd416efc6b258d343ee1cff235855 (patch) | |
tree | d9d146d4f688e677cca571a2b16c3fdd68b1c8ff /src/js_parser.zig | |
parent | a8fca7d679d79e37a93963a1f3bdf34a3011ba78 (diff) | |
download | bun-e399bceb3cfbd416efc6b258d343ee1cff235855.tar.gz bun-e399bceb3cfbd416efc6b258d343ee1cff235855.tar.zst bun-e399bceb3cfbd416efc6b258d343ee1cff235855.zip |
[js parser] Skip appending empty statements
Diffstat (limited to 'src/js_parser.zig')
-rw-r--r-- | src/js_parser.zig | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/js_parser.zig b/src/js_parser.zig index 9603d2a22..e2f5475b2 100644 --- a/src/js_parser.zig +++ b/src/js_parser.zig @@ -9314,6 +9314,7 @@ fn NewParser_( } } + var skip = stmt.data == .s_empty; // Parse one or more directives at the beginning if (isDirectivePrologue) { isDirectivePrologue = false; @@ -9325,9 +9326,11 @@ fn NewParser_( isDirectivePrologue = true; if (str.eqlComptime("use strict")) { + skip = p.options.features.dynamic_require or skip; // Track "use strict" directives p.current_scope.strict_mode = .explicit_strict_mode; } else if (str.eqlComptime("use asm")) { + skip = p.options.features.dynamic_require or skip; stmt.data = Prefill.Data.SEmpty; } } @@ -9339,7 +9342,8 @@ fn NewParser_( } } - try stmts.append(stmt); + if (!skip) + try stmts.append(stmt); // Warn about ASI and return statements. Here's an example of code with // this problem: https://github.com/rollup/rollup/issues/3729 |