From edacf936ecbe14744ccfdf947c1cbdcbb0518bcd Mon Sep 17 00:00:00 2001 From: overlookmotel <557937+overlookmotel@users.noreply.github.com> Date: Mon, 19 Aug 2024 21:09:07 +0000 Subject: [PATCH] fix(transformer): remove an `AstBuilder::copy` call (#4983) Remove one usage of unsound `AstBuilder::copy` method, using the new `get_inner_expression_mut` method introduced in #4920. --- crates/oxc_transformer/src/typescript/annotations.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/oxc_transformer/src/typescript/annotations.rs b/crates/oxc_transformer/src/typescript/annotations.rs index 0f1c67a79..9e42a1021 100644 --- a/crates/oxc_transformer/src/typescript/annotations.rs +++ b/crates/oxc_transformer/src/typescript/annotations.rs @@ -217,8 +217,8 @@ impl<'a> TypeScriptAnnotations<'a> { pub fn transform_expression(&mut self, expr: &mut Expression<'a>) { if expr.is_typescript_syntax() { - // SAFETY: `ast.copy` is unsound! We need to fix. - *expr = unsafe { self.ctx.ast.copy(expr.get_inner_expression()) }; + let inner_expr = expr.get_inner_expression_mut(); + *expr = self.ctx.ast.move_expression(inner_expr); } }