From 10f68388ff30ccc40aae43c7f8b42d59224e6331 Mon Sep 17 00:00:00 2001 From: Ryan Tsao Date: Thu, 20 Aug 2020 18:09:53 -0700 Subject: [PATCH] Add fix --- internal/printer/printer.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/printer/printer.go b/internal/printer/printer.go index cbd445246d3..3287e9ee119 100644 --- a/internal/printer/printer.go +++ b/internal/printer/printer.go @@ -1226,6 +1226,7 @@ const ( forbidCall = 1 << iota forbidIn hasNonOptionalChainParent + wrapRequireCall ) func (p *printer) printUndefined(level ast.L) { @@ -1290,7 +1291,7 @@ func (p *printer) printExpr(expr ast.Expr, level ast.L, flags int) { p.printSpaceBeforeIdentifier() p.print("new") p.printSpace() - p.printExpr(e.Target, ast.LNew, forbidCall) + p.printExpr(e.Target, ast.LNew, forbidCall | wrapRequireCall) // TODO: Omit this while minifying p.print("(") @@ -1363,7 +1364,7 @@ func (p *printer) printExpr(expr ast.Expr, level ast.L, flags int) { } case *ast.ERequire: - wrap := level >= ast.LNew + wrap := level >= ast.LNew || (flags&wrapRequireCall) != 0 if wrap { p.print("(") }