From 6f71541db0da3da7da0f79e33aeb462789782a24 Mon Sep 17 00:00:00 2001 From: overlookmotel <557937+overlookmotel@users.noreply.github.com> Date: Sat, 1 Jun 2024 10:13:45 +0000 Subject: [PATCH] fix(semantic): set program scope_id for TS definition files (#3496) Semantic does not visit the AST for TS definition files, but it does create a root scope. Record this scope ID in `Program`'s `scope_id` field. --- crates/oxc_semantic/src/builder.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crates/oxc_semantic/src/builder.rs b/crates/oxc_semantic/src/builder.rs index e8f825ba1..b908ed562 100644 --- a/crates/oxc_semantic/src/builder.rs +++ b/crates/oxc_semantic/src/builder.rs @@ -140,7 +140,8 @@ impl<'a> SemanticBuilder<'a> { pub fn build(mut self, program: &Program<'a>) -> SemanticBuilderReturn<'a> { if self.source_type.is_typescript_definition() { - self.scope.add_scope(None, ScopeFlags::Top); + let scope_id = self.scope.add_scope(None, ScopeFlags::Top); + program.scope_id.set(Some(scope_id)); } else { self.visit_program(program);