aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-04-17 03:45:38 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-04-17 03:45:54 -0700
commit6b758c809f7f74d21e1f183698cf203850979db8 (patch)
treeb72939a80c81dc7f5beb4338cc22b42f628743c8
parent746940d21eced8b5057392efa5666e4d2be23df1 (diff)
downloadbun-6b758c809f7f74d21e1f183698cf203850979db8.tar.gz
bun-6b758c809f7f74d21e1f183698cf203850979db8.tar.zst
bun-6b758c809f7f74d21e1f183698cf203850979db8.zip
Fix dynamic require()
-rw-r--r--src/js_parser.zig15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/js_parser.zig b/src/js_parser.zig
index e443d30b2..24ab03836 100644
--- a/src/js_parser.zig
+++ b/src/js_parser.zig
@@ -16239,7 +16239,22 @@ fn NewParser_(
return p.newExpr(E.Null{}, expr.loc);
}
+ if (p.options.warn_about_unbundled_modules) {
+ const r = js_lexer.rangeOfIdentifier(p.source, e_.target.loc);
+ p.log.addRangeDebug(p.source, r, "This call to \"require\" will not be bundled because it has dynamic arguments") catch unreachable;
+ }
+
p.ignoreUsage(p.require_ref);
+
+ if (!could_be_require_resolve) {
+ return p.newExpr(
+ E.Call{
+ .target = p.valueForRequire(e_.target.loc),
+ .args = e_.args,
+ },
+ expr.loc,
+ );
+ }
}
if (p.options.warn_about_unbundled_modules) {