diff options
author | 2023-04-17 03:45:38 -0700 | |
---|---|---|
committer | 2023-04-17 03:45:54 -0700 | |
commit | 6b758c809f7f74d21e1f183698cf203850979db8 (patch) | |
tree | b72939a80c81dc7f5beb4338cc22b42f628743c8 | |
parent | 746940d21eced8b5057392efa5666e4d2be23df1 (diff) | |
download | bun-6b758c809f7f74d21e1f183698cf203850979db8.tar.gz bun-6b758c809f7f74d21e1f183698cf203850979db8.tar.zst bun-6b758c809f7f74d21e1f183698cf203850979db8.zip |
Fix dynamic require()
-rw-r--r-- | src/js_parser.zig | 15 |
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) { |