diff --git a/crates/swc_ecma_compat_es2015/src/template_literal.rs b/crates/swc_ecma_compat_es2015/src/template_literal.rs index d8b030d3666c..ab63cab51897 100644 --- a/crates/swc_ecma_compat_es2015/src/template_literal.rs +++ b/crates/swc_ecma_compat_es2015/src/template_literal.rs @@ -5,12 +5,8 @@ use swc_atoms::JsWord; use swc_common::{util::take::Take, BytePos, Spanned, DUMMY_SP}; use swc_ecma_ast::*; use swc_ecma_transforms_base::{helper, perf::Parallel}; -use swc_ecma_utils::{ - is_literal, prepend_stmts, private_ident, quote_ident, ExprFactory, StmtLike, -}; -use swc_ecma_visit::{as_folder, standard_only_visit_mut, Fold, VisitMut, VisitMutWith}; use swc_ecma_utils::{is_literal, prepend_stmts, private_ident, quote_ident, ExprFactory}; -use swc_ecma_visit::{as_folder, noop_visit_mut_type, Fold, VisitMut, VisitMutWith}; +use swc_ecma_visit::{as_folder, standard_only_visit_mut, Fold, VisitMut, VisitMutWith}; use swc_trace_macro::swc_trace; pub fn template_literal(c: Config) -> impl Fold + VisitMut { diff --git a/crates/swc_ecma_transforms_module/src/module_decl_strip.rs b/crates/swc_ecma_transforms_module/src/module_decl_strip.rs index 6992f3144535..02deed7cf8b0 100644 --- a/crates/swc_ecma_transforms_module/src/module_decl_strip.rs +++ b/crates/swc_ecma_transforms_module/src/module_decl_strip.rs @@ -6,10 +6,8 @@ use swc_common::{ Mark, Span, SyntaxContext, }; use swc_ecma_ast::*; -use swc_ecma_utils::{find_pat_ids, ident::IdentLike, private_ident, quote_ident, ExprFactory}; -use swc_ecma_visit::{standard_only_visit_mut, VisitMut, VisitMutWith}; use swc_ecma_utils::{find_pat_ids, private_ident, quote_ident, ExprFactory}; -use swc_ecma_visit::{noop_visit_mut_type, VisitMut, VisitMutWith}; +use swc_ecma_visit::{standard_only_visit_mut, VisitMut, VisitMutWith}; use crate::{module_ref_rewriter::ImportMap, SpanCtx}; diff --git a/crates/swc_ecma_transforms_typescript/src/transform.rs b/crates/swc_ecma_transforms_typescript/src/transform.rs index ca96f321df05..8734dd5d00da 100644 --- a/crates/swc_ecma_transforms_typescript/src/transform.rs +++ b/crates/swc_ecma_transforms_typescript/src/transform.rs @@ -1003,12 +1003,9 @@ impl Transform { // NOTE: This is not correct! // However, all unresolved_span are used in TsImportExportAssignConfig::Classic // which is deprecated and not used in real world. - let unresolved_span = DUMMY_SP.apply_mark(self.unresolved_mark); - let cjs_require = quote_ident!(unresolved_span, "require"); - let cjs_exports = quote_ident!(unresolved_span, "exports"); - let unresolved_ctxt = SyntaxContext::empty().apply_mark(self.top_level_mark); - let cjs_require = quote_ident!(unresolved_ctxt, "require"); - let cjs_exports = quote_ident!(unresolved_ctxt, "exports"); + let top_level_ctxt = self.top_level_ctxt; + let cjs_require = quote_ident!(top_level_ctxt, "require"); + let cjs_exports = quote_ident!(top_level_ctxt, "exports"); let mut cjs_export_assign = None; @@ -1016,8 +1013,7 @@ impl Transform { match &mut module_item { ModuleItem::ModuleDecl(ModuleDecl::TsImportEquals(decl)) if !decl.is_type_only => { debug_assert_ne!( - decl.id.span.ctxt(), - self.unresolved_ctxt, + decl.id.ctxt, self.unresolved_ctxt, "TsImportEquals has top-level context and it should not be identical to \ the unresolved mark" ); @@ -1166,7 +1162,7 @@ impl Transform { expr.make_assign_to( op!("="), member_expr!( - unresolved_ctxt, + top_level_ctxt, Default::default(), module.exports ) diff --git a/crates/swc_ecma_utils/src/lib.rs b/crates/swc_ecma_utils/src/lib.rs index 0abf88be029f..2830ef30d77d 100644 --- a/crates/swc_ecma_utils/src/lib.rs +++ b/crates/swc_ecma_utils/src/lib.rs @@ -884,9 +884,6 @@ pub trait ExprExt { return (Pure, num_from_str(&s)); } - Expr::Ident(Ident { sym, span, .. }) => match &**sym { - "undefined" | "NaN" if span.ctxt == ctx.unresolved_ctxt => f64::NAN, - "Infinity" if span.ctxt == ctx.unresolved_ctxt => f64::INFINITY, Expr::Ident(Ident { sym, ctxt, .. }) => match &**sym { "undefined" | "NaN" if *ctxt == ctx.unresolved_ctxt => f64::NAN, "Infinity" if *ctxt == ctx.unresolved_ctxt => f64::INFINITY,