From d1dbaa12e52fd7abfcc2fc51a5b0a1e003381897 Mon Sep 17 00:00:00 2001 From: Dunqing Date: Fri, 22 Nov 2024 22:26:24 +0800 Subject: [PATCH] feat(traverse): support automatically variable hoisting during generating bindings --- crates/oxc_transformer/src/jsx/refresh.rs | 9 +- crates/oxc_traverse/scripts/lib/walk.mjs | 15 +- crates/oxc_traverse/src/context/mod.rs | 19 +- crates/oxc_traverse/src/context/scoping.rs | 48 +- crates/oxc_traverse/src/generated/walk.rs | 249 ++-- tasks/coverage/snapshots/semantic_misc.snap | 9 - .../coverage/snapshots/semantic_test262.snap | 1127 +++-------------- .../snapshots/semantic_typescript.snap | 116 +- 8 files changed, 364 insertions(+), 1228 deletions(-) diff --git a/crates/oxc_transformer/src/jsx/refresh.rs b/crates/oxc_transformer/src/jsx/refresh.rs index a172ebc17f0c72..ef7ce078390c25 100644 --- a/crates/oxc_transformer/src/jsx/refresh.rs +++ b/crates/oxc_transformer/src/jsx/refresh.rs @@ -576,14 +576,7 @@ impl<'a, 'ctx> ReactRefresh<'a, 'ctx> { arguments.push(function); } - // TODO: Handle var hoisted in ctx API - let target_scope_id = ctx - .scopes() - .ancestors(ctx.current_scope_id()) - .find(|&scope_id| ctx.scopes().get_flags(scope_id).is_var()) - .unwrap_or_else(|| ctx.current_scope_id()); - - let binding = ctx.generate_uid("s", target_scope_id, SymbolFlags::FunctionScopedVariable); + let binding = ctx.generate_uid_in_current_scope("s", SymbolFlags::FunctionScopedVariable); // _s(); let call_expression = ctx.ast.statement_expression( diff --git a/crates/oxc_traverse/scripts/lib/walk.mjs b/crates/oxc_traverse/scripts/lib/walk.mjs index a70f5b543c2d86..5607de7deeb62a 100644 --- a/crates/oxc_traverse/scripts/lib/walk.mjs +++ b/crates/oxc_traverse/scripts/lib/walk.mjs @@ -109,11 +109,20 @@ function generateWalkForStruct(type, types) { // but we don't take that into account. // Visitor should not do that though, so maybe it's OK. // In final version, we should not make `scope_id` fields `Cell`s to prevent this. + + // const Var = Self::Top.bits() | Self::Function.bits() | Self::ClassStaticBlock.bits() | Self::TsModuleBlock.bits(); + let isVarHoistingScope = type.name == "Function" || ["Top", "Function", "ClassStaticBlock", "TsModuleBlock"] + .some(flag => scopeArgs.flags.includes(flag)); + +console.log("isVarHoistingScope", type.name, isVarHoistingScope, scopeArgs); enterScopeCode = ` - let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id((*(${makeFieldCode(scopeIdField)})).get().unwrap()); + let previous_scope_id = ctx.current_scope_id(); + ${isVarHoistingScope ? `let previous_var_hoisting_scope_id = ctx.scoping.current_var_hoisting_scope_id();` : ''} + let current_scope_id = (*(${makeFieldCode(scopeIdField)})).get().unwrap(); + ctx.set_current_scope_id(current_scope_id, ${isVarHoistingScope ? "Some(current_scope_id)" : "None"}); `; - exitScopeCode = `ctx.set_current_scope_id(previous_scope_id);`; + + exitScopeCode = `ctx.set_current_scope_id(previous_scope_id, ${isVarHoistingScope ? "Some(previous_var_hoisting_scope_id)" : "None"} );`; } const fieldsCodes = visitedFields.map((field, index) => { diff --git a/crates/oxc_traverse/src/context/mod.rs b/crates/oxc_traverse/src/context/mod.rs index eda09ba266cc6c..6052510a367cb0 100644 --- a/crates/oxc_traverse/src/context/mod.rs +++ b/crates/oxc_traverse/src/context/mod.rs @@ -3,8 +3,8 @@ use oxc_ast::{ ast::{Expression, IdentifierReference, Statement}, AstBuilder, }; -use oxc_semantic::{NodeId, ScopeTree, SymbolTable}; -use oxc_span::{Atom, CompactStr, Span, SPAN}; +use oxc_semantic::{ScopeTree, SymbolTable}; +use oxc_span::{Atom, CompactStr, Span}; use oxc_syntax::{ reference::{ReferenceFlags, ReferenceId}, scope::{ScopeFlags, ScopeId}, @@ -356,12 +356,7 @@ impl<'a> TraverseCtx<'a> { // Get name for UID let name = self.generate_uid_name(name); let name_atom = self.ast.atom(&name); - - // Add binding to scope - let symbol_id = - self.symbols_mut().create_symbol(SPAN, name.clone(), flags, scope_id, NodeId::DUMMY); - self.scopes_mut().add_binding(scope_id, name, symbol_id); - + let symbol_id = self.scoping.add_binding(scope_id, name, flags); BoundIdentifier::new(name_atom, symbol_id) } @@ -620,7 +615,11 @@ impl<'a> TraverseCtx<'a> { /// Shortcut for `ctx.scoping.set_current_scope_id`, to make `walk_*` methods less verbose. #[inline] - pub(crate) fn set_current_scope_id(&mut self, scope_id: ScopeId) { - self.scoping.set_current_scope_id(scope_id); + pub(crate) fn set_current_scope_id( + &mut self, + scope_id: ScopeId, + var_hoisting_scope_id: Option, + ) { + self.scoping.set_current_scope_id(scope_id, var_hoisting_scope_id); } } diff --git a/crates/oxc_traverse/src/context/scoping.rs b/crates/oxc_traverse/src/context/scoping.rs index 06d61cf6300413..9d6dc6b423c6aa 100644 --- a/crates/oxc_traverse/src/context/scoping.rs +++ b/crates/oxc_traverse/src/context/scoping.rs @@ -26,6 +26,7 @@ pub struct TraverseScoping { symbols: SymbolTable, uid_names: Option>, current_scope_id: ScopeId, + current_var_hoisting_scope_id: ScopeId, } // Public methods @@ -40,6 +41,12 @@ impl TraverseScoping { self.current_scope_id } + /// Get current scope ID + #[inline] + pub(crate) fn current_var_hoisting_scope_id(&self) -> ScopeId { + self.current_var_hoisting_scope_id + } + /// Get current scope flags #[inline] pub fn current_scope_flags(&self) -> ScopeFlags { @@ -164,6 +171,33 @@ impl TraverseScoping { self.scopes.delete_scope(scope_id); } + pub fn add_binding( + &mut self, + scope_id: ScopeId, + name: CompactStr, + flags: SymbolFlags, + ) -> SymbolId { + // println!( + // "{name:?} {scope_id:?} {:?} {:?}", + // self.scopes.get_flags(scope_id), + // self.current_var_hoisting_scope_id + // ); + let scope_id = if scope_id == self.current_var_hoisting_scope_id + || flags != SymbolFlags::FunctionScopedVariable + || self.scopes.get_flags(scope_id).is_var() + { + scope_id + } else { + self.current_var_hoisting_scope_id + }; + + let symbol_id = + self.symbols.create_symbol(SPAN, name.clone(), flags, scope_id, NodeId::DUMMY); + self.scopes.add_binding(scope_id, name, symbol_id); + + symbol_id + } + /// Generate binding. /// /// Creates a symbol with the provided name and flags and adds it to the specified scope. @@ -174,8 +208,6 @@ impl TraverseScoping { flags: SymbolFlags, ) -> BoundIdentifier<'a> { let owned_name = name.to_compact_str(); - - // Add binding to scope let symbol_id = self.symbols.create_symbol(SPAN, owned_name.clone(), flags, scope_id, NodeId::DUMMY); self.scopes.add_binding(scope_id, owned_name, symbol_id); @@ -388,13 +420,23 @@ impl TraverseScoping { uid_names: None, // Dummy value. Immediately overwritten in `walk_program`. current_scope_id: ScopeId::new(0), + // Dummy value. Immediately overwritten in `walk_program`. + current_var_hoisting_scope_id: ScopeId::new(0), } } /// Set current scope ID #[inline] - pub(crate) fn set_current_scope_id(&mut self, scope_id: ScopeId) { + pub(crate) fn set_current_scope_id( + &mut self, + scope_id: ScopeId, + var_hoisting_scope_id: Option, + ) { self.current_scope_id = scope_id; + if let Some(var_hoisting_scope_id) = var_hoisting_scope_id { + self.current_var_hoisting_scope_id = var_hoisting_scope_id; + } + // println!("{:?} {:?} {:?}", var_hoisting_scope_id, scope_id, self.current_scope_flags()); } /// Get `uid_names`. diff --git a/crates/oxc_traverse/src/generated/walk.rs b/crates/oxc_traverse/src/generated/walk.rs index d6cfa0f453fdbf..9be848c07aace8 100644 --- a/crates/oxc_traverse/src/generated/walk.rs +++ b/crates/oxc_traverse/src/generated/walk.rs @@ -32,11 +32,12 @@ pub(crate) unsafe fn walk_program<'a, Tr: Traverse<'a>>( ) { traverser.enter_program(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_PROGRAM_SCOPE_ID) as *mut Cell>)) - .get() - .unwrap(), - ); + let previous_var_hoisting_scope_id = ctx.scoping.current_var_hoisting_scope_id(); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_PROGRAM_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, Some(current_scope_id)); let pop_token = ctx .push_stack(Ancestor::ProgramHashbang(ancestor::ProgramWithoutHashbang(node, PhantomData))); if let Some(field) = @@ -58,7 +59,7 @@ pub(crate) unsafe fn walk_program<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, Some(previous_var_hoisting_scope_id)); traverser.exit_program(&mut *node, ctx); } @@ -1417,12 +1418,11 @@ pub(crate) unsafe fn walk_block_statement<'a, Tr: Traverse<'a>>( ) { traverser.enter_block_statement(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_BLOCK_STATEMENT_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_BLOCK_STATEMENT_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::BlockStatementBody( ancestor::BlockStatementWithoutBody(node, PhantomData), )); @@ -1432,7 +1432,7 @@ pub(crate) unsafe fn walk_block_statement<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_block_statement(&mut *node, ctx); } @@ -1623,12 +1623,11 @@ pub(crate) unsafe fn walk_for_statement<'a, Tr: Traverse<'a>>( ) { traverser.enter_for_statement(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_FOR_STATEMENT_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_FOR_STATEMENT_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::ForStatementInit(ancestor::ForStatementWithoutInit( node, PhantomData, @@ -1657,7 +1656,7 @@ pub(crate) unsafe fn walk_for_statement<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_for_statement(&mut *node, ctx); } @@ -1726,12 +1725,11 @@ pub(crate) unsafe fn walk_for_in_statement<'a, Tr: Traverse<'a>>( ) { traverser.enter_for_in_statement(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_FOR_IN_STATEMENT_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_FOR_IN_STATEMENT_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::ForInStatementLeft( ancestor::ForInStatementWithoutLeft(node, PhantomData), )); @@ -1753,7 +1751,7 @@ pub(crate) unsafe fn walk_for_in_statement<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_for_in_statement(&mut *node, ctx); } @@ -1791,12 +1789,11 @@ pub(crate) unsafe fn walk_for_of_statement<'a, Tr: Traverse<'a>>( ) { traverser.enter_for_of_statement(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_FOR_OF_STATEMENT_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_FOR_OF_STATEMENT_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::ForOfStatementLeft( ancestor::ForOfStatementWithoutLeft(node, PhantomData), )); @@ -1818,7 +1815,7 @@ pub(crate) unsafe fn walk_for_of_statement<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_for_of_statement(&mut *node, ctx); } @@ -1915,12 +1912,11 @@ pub(crate) unsafe fn walk_switch_statement<'a, Tr: Traverse<'a>>( ctx, ); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_SWITCH_STATEMENT_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_SWITCH_STATEMENT_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); ctx.retag_stack(AncestorType::SwitchStatementCases); for item in (*((node as *mut u8).add(ancestor::OFFSET_SWITCH_STATEMENT_CASES) as *mut Vec)) @@ -1929,7 +1925,7 @@ pub(crate) unsafe fn walk_switch_statement<'a, Tr: Traverse<'a>>( walk_switch_case(traverser, item as *mut _, ctx); } ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_switch_statement(&mut *node, ctx); } @@ -2036,12 +2032,11 @@ pub(crate) unsafe fn walk_catch_clause<'a, Tr: Traverse<'a>>( ) { traverser.enter_catch_clause(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_CATCH_CLAUSE_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_CATCH_CLAUSE_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::CatchClauseParam(ancestor::CatchClauseWithoutParam( node, PhantomData, @@ -2059,7 +2054,7 @@ pub(crate) unsafe fn walk_catch_clause<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_catch_clause(&mut *node, ctx); } @@ -2263,12 +2258,12 @@ pub(crate) unsafe fn walk_function<'a, Tr: Traverse<'a>>( ) { traverser.enter_function(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_FUNCTION_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let previous_var_hoisting_scope_id = ctx.scoping.current_var_hoisting_scope_id(); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_FUNCTION_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, Some(current_scope_id)); let pop_token = ctx.push_stack(Ancestor::FunctionId(ancestor::FunctionWithoutId(node, PhantomData))); if let Some(field) = &mut *((node as *mut u8).add(ancestor::OFFSET_FUNCTION_ID) @@ -2308,7 +2303,7 @@ pub(crate) unsafe fn walk_function<'a, Tr: Traverse<'a>>( walk_function_body(traverser, (&mut **field) as *mut _, ctx); } ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, Some(previous_var_hoisting_scope_id)); traverser.exit_function(&mut *node, ctx); } @@ -2394,12 +2389,13 @@ pub(crate) unsafe fn walk_arrow_function_expression<'a, Tr: Traverse<'a>>( ) { traverser.enter_arrow_function_expression(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_ARROW_FUNCTION_EXPRESSION_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let previous_var_hoisting_scope_id = ctx.scoping.current_var_hoisting_scope_id(); + let current_scope_id = (*((node as *mut u8) + .add(ancestor::OFFSET_ARROW_FUNCTION_EXPRESSION_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, Some(current_scope_id)); let pop_token = ctx.push_stack(Ancestor::ArrowFunctionExpressionTypeParameters( ancestor::ArrowFunctionExpressionWithoutTypeParameters(node, PhantomData), )); @@ -2431,7 +2427,7 @@ pub(crate) unsafe fn walk_arrow_function_expression<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, Some(previous_var_hoisting_scope_id)); traverser.exit_arrow_function_expression(&mut *node, ctx); } @@ -2473,11 +2469,11 @@ pub(crate) unsafe fn walk_class<'a, Tr: Traverse<'a>>( walk_binding_identifier(traverser, field as *mut _, ctx); } let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_CLASS_SCOPE_ID) as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_CLASS_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); if let Some(field) = &mut *((node as *mut u8).add(ancestor::OFFSET_CLASS_TYPE_PARAMETERS) as *mut Option>) { @@ -2512,7 +2508,7 @@ pub(crate) unsafe fn walk_class<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_class(&mut *node, ctx); } @@ -2646,12 +2642,12 @@ pub(crate) unsafe fn walk_static_block<'a, Tr: Traverse<'a>>( ) { traverser.enter_static_block(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_STATIC_BLOCK_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let previous_var_hoisting_scope_id = ctx.scoping.current_var_hoisting_scope_id(); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_STATIC_BLOCK_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, Some(current_scope_id)); let pop_token = ctx .push_stack(Ancestor::StaticBlockBody(ancestor::StaticBlockWithoutBody(node, PhantomData))); walk_statements( @@ -2660,7 +2656,7 @@ pub(crate) unsafe fn walk_static_block<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, Some(previous_var_hoisting_scope_id)); traverser.exit_static_block(&mut *node, ctx); } @@ -3670,12 +3666,11 @@ pub(crate) unsafe fn walk_ts_enum_declaration<'a, Tr: Traverse<'a>>( ctx, ); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_TS_ENUM_DECLARATION_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_TS_ENUM_DECLARATION_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); ctx.retag_stack(AncestorType::TSEnumDeclarationMembers); for item in (*((node as *mut u8).add(ancestor::OFFSET_TS_ENUM_DECLARATION_MEMBERS) as *mut Vec)) @@ -3684,7 +3679,7 @@ pub(crate) unsafe fn walk_ts_enum_declaration<'a, Tr: Traverse<'a>>( walk_ts_enum_member(traverser, item as *mut _, ctx); } ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_ts_enum_declaration(&mut *node, ctx); } @@ -3919,12 +3914,11 @@ pub(crate) unsafe fn walk_ts_conditional_type<'a, Tr: Traverse<'a>>( ctx, ); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_TS_CONDITIONAL_TYPE_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_TS_CONDITIONAL_TYPE_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); ctx.retag_stack(AncestorType::TSConditionalTypeExtendsType); walk_ts_type( traverser, @@ -3937,7 +3931,7 @@ pub(crate) unsafe fn walk_ts_conditional_type<'a, Tr: Traverse<'a>>( (node as *mut u8).add(ancestor::OFFSET_TS_CONDITIONAL_TYPE_TRUE_TYPE) as *mut TSType, ctx, ); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); ctx.retag_stack(AncestorType::TSConditionalTypeFalseType); walk_ts_type( traverser, @@ -4476,12 +4470,12 @@ pub(crate) unsafe fn walk_ts_type_alias_declaration<'a, Tr: Traverse<'a>>( ctx, ); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_TS_TYPE_ALIAS_DECLARATION_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8) + .add(ancestor::OFFSET_TS_TYPE_ALIAS_DECLARATION_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); if let Some(field) = &mut *((node as *mut u8) .add(ancestor::OFFSET_TS_TYPE_ALIAS_DECLARATION_TYPE_PARAMETERS) as *mut Option>) @@ -4497,7 +4491,7 @@ pub(crate) unsafe fn walk_ts_type_alias_declaration<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_ts_type_alias_declaration(&mut *node, ctx); } @@ -4542,12 +4536,12 @@ pub(crate) unsafe fn walk_ts_interface_declaration<'a, Tr: Traverse<'a>>( ctx, ); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_TS_INTERFACE_DECLARATION_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8) + .add(ancestor::OFFSET_TS_INTERFACE_DECLARATION_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); if let Some(field) = &mut *((node as *mut u8) .add(ancestor::OFFSET_TS_INTERFACE_DECLARATION_EXTENDS) as *mut Option>) @@ -4572,7 +4566,7 @@ pub(crate) unsafe fn walk_ts_interface_declaration<'a, Tr: Traverse<'a>>( ctx, ); ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_ts_interface_declaration(&mut *node, ctx); } @@ -4719,12 +4713,11 @@ pub(crate) unsafe fn walk_ts_method_signature<'a, Tr: Traverse<'a>>( ) { traverser.enter_ts_method_signature(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_TS_METHOD_SIGNATURE_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_TS_METHOD_SIGNATURE_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::TSMethodSignatureKey( ancestor::TSMethodSignatureWithoutKey(node, PhantomData), )); @@ -4762,7 +4755,7 @@ pub(crate) unsafe fn walk_ts_method_signature<'a, Tr: Traverse<'a>>( walk_ts_type_annotation(traverser, (&mut **field) as *mut _, ctx); } ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_ts_method_signature(&mut *node, ctx); } @@ -4773,12 +4766,12 @@ pub(crate) unsafe fn walk_ts_construct_signature_declaration<'a, Tr: Traverse<'a ) { traverser.enter_ts_construct_signature_declaration(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_TS_CONSTRUCT_SIGNATURE_DECLARATION_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8) + .add(ancestor::OFFSET_TS_CONSTRUCT_SIGNATURE_DECLARATION_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::TSConstructSignatureDeclarationTypeParameters( ancestor::TSConstructSignatureDeclarationWithoutTypeParameters(node, PhantomData), )); @@ -4803,7 +4796,7 @@ pub(crate) unsafe fn walk_ts_construct_signature_declaration<'a, Tr: Traverse<'a walk_ts_type_annotation(traverser, (&mut **field) as *mut _, ctx); } ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_ts_construct_signature_declaration(&mut *node, ctx); } @@ -4908,12 +4901,13 @@ pub(crate) unsafe fn walk_ts_module_declaration<'a, Tr: Traverse<'a>>( ctx, ); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( + let previous_var_hoisting_scope_id = ctx.scoping.current_var_hoisting_scope_id(); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_TS_MODULE_DECLARATION_SCOPE_ID) as *mut Cell>)) .get() - .unwrap(), - ); + .unwrap(); + ctx.set_current_scope_id(current_scope_id, Some(current_scope_id)); if let Some(field) = &mut *((node as *mut u8).add(ancestor::OFFSET_TS_MODULE_DECLARATION_BODY) as *mut Option) { @@ -4921,7 +4915,7 @@ pub(crate) unsafe fn walk_ts_module_declaration<'a, Tr: Traverse<'a>>( walk_ts_module_declaration_body(traverser, field as *mut _, ctx); } ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, Some(previous_var_hoisting_scope_id)); traverser.exit_ts_module_declaration(&mut *node, ctx); } @@ -5248,12 +5242,11 @@ pub(crate) unsafe fn walk_ts_mapped_type<'a, Tr: Traverse<'a>>( ) { traverser.enter_ts_mapped_type(&mut *node, ctx); let previous_scope_id = ctx.current_scope_id(); - ctx.set_current_scope_id( - (*((node as *mut u8).add(ancestor::OFFSET_TS_MAPPED_TYPE_SCOPE_ID) - as *mut Cell>)) - .get() - .unwrap(), - ); + let current_scope_id = (*((node as *mut u8).add(ancestor::OFFSET_TS_MAPPED_TYPE_SCOPE_ID) + as *mut Cell>)) + .get() + .unwrap(); + ctx.set_current_scope_id(current_scope_id, None); let pop_token = ctx.push_stack(Ancestor::TSMappedTypeTypeParameter( ancestor::TSMappedTypeWithoutTypeParameter(node, PhantomData), )); @@ -5277,7 +5270,7 @@ pub(crate) unsafe fn walk_ts_mapped_type<'a, Tr: Traverse<'a>>( walk_ts_type(traverser, field as *mut _, ctx); } ctx.pop_stack(pop_token); - ctx.set_current_scope_id(previous_scope_id); + ctx.set_current_scope_id(previous_scope_id, None); traverser.exit_ts_mapped_type(&mut *node, ctx); } diff --git a/tasks/coverage/snapshots/semantic_misc.snap b/tasks/coverage/snapshots/semantic_misc.snap index 96c9c8a09cb05c..9401c58a134f10 100644 --- a/tasks/coverage/snapshots/semantic_misc.snap +++ b/tasks/coverage/snapshots/semantic_misc.snap @@ -55,12 +55,6 @@ tasks/coverage/misc/pass/oxc-3948-1.ts semantic error: Bindings mismatch: after transform: ScopeId(0): ["BrowserWorkingCopyBackupTracker", "CancellationToken", "DisposableStore", "EditorPart", "EditorService", "IEditorGroupsService", "IEditorService", "IFilesConfigurationService", "IInstantiationService", "ILifecycleService", "ILogService", "IUntitledTextResourceEditorInput", "IWorkingCopyBackup", "IWorkingCopyBackupService", "IWorkingCopyEditorHandler", "IWorkingCopyEditorService", "IWorkingCopyService", "InMemoryTestWorkingCopyBackupService", "LifecyclePhase", "Schemas", "TestServiceAccessor", "TestWorkingCopy", "URI", "UntitledTextEditorInput", "VSBuffer", "_asyncToGenerator", "assert", "bufferToReadable", "createEditorPart", "ensureNoDisposablesAreLeakedInTestSuite", "isWindows", "registerTestResourceEditor", "timeout", "toResource", "toTypedWorkingCopyId", "toUntypedWorkingCopyId", "workbenchInstantiationService", "workbenchTeardown"] rebuilt : ScopeId(0): ["BrowserWorkingCopyBackupTracker", "DisposableStore", "EditorService", "IEditorGroupsService", "IEditorService", "IFilesConfigurationService", "ILifecycleService", "ILogService", "IWorkingCopyBackupService", "IWorkingCopyEditorService", "IWorkingCopyService", "InMemoryTestWorkingCopyBackupService", "LifecyclePhase", "Schemas", "TestServiceAccessor", "TestWorkingCopy", "URI", "UntitledTextEditorInput", "VSBuffer", "_asyncToGenerator", "assert", "bufferToReadable", "createEditorPart", "ensureNoDisposablesAreLeakedInTestSuite", "isWindows", "registerTestResourceEditor", "timeout", "toResource", "toTypedWorkingCopyId", "toUntypedWorkingCopyId", "workbenchInstantiationService", "workbenchTeardown"] -Bindings mismatch: -after transform: ScopeId(13): ["_await$accessor$edito", "accessor", "untitled", "untitledTextEditor", "untitledTextModel", "workingCopyBackupService"] -rebuilt : ScopeId(20): ["_await$accessor$edito", "_untitledTextModel$te", "accessor", "untitled", "untitledTextEditor", "untitledTextModel", "workingCopyBackupService"] -Bindings mismatch: -after transform: ScopeId(14): ["_untitledTextModel$te"] -rebuilt : ScopeId(21): [] Symbol reference IDs mismatch for "URI": after transform: SymbolId(1): [ReferenceId(109), ReferenceId(117), ReferenceId(156), ReferenceId(158), ReferenceId(160), ReferenceId(162)] rebuilt : SymbolId(1): [ReferenceId(158), ReferenceId(160), ReferenceId(162), ReferenceId(164)] @@ -103,9 +97,6 @@ rebuilt : SymbolId(26): [ReferenceId(16)] Symbol reference IDs mismatch for "TestWorkingCopyBackupTracker": after transform: SymbolId(39): [ReferenceId(42), ReferenceId(74), ReferenceId(154), ReferenceId(215)] rebuilt : SymbolId(34): [ReferenceId(65), ReferenceId(216)] -Symbol scope ID mismatch for "_untitledTextModel$te": -after transform: SymbolId(138): ScopeId(14) -rebuilt : SymbolId(63): ScopeId(20) Unresolved reference IDs mismatch for "Promise": after transform: [ReferenceId(36), ReferenceId(39), ReferenceId(82), ReferenceId(114), ReferenceId(153), ReferenceId(282)] rebuilt : [ReferenceId(289)] diff --git a/tasks/coverage/snapshots/semantic_test262.snap b/tasks/coverage/snapshots/semantic_test262.snap index c75de2ff289c50..c7710bcc22febe 100644 --- a/tasks/coverage/snapshots/semantic_test262.snap +++ b/tasks/coverage/snapshots/semantic_test262.snap @@ -2,7 +2,7 @@ commit: 06454619 semantic_test262 Summary: AST Parsed : 43851/43851 (100.00%) -Positive Passed: 42990/43851 (98.04%) +Positive Passed: 43044/43851 (98.16%) tasks/coverage/test262/test/annexB/language/function-code/if-decl-else-decl-a-func-block-scoping.js semantic error: Symbol scope ID mismatch for "f": after transform: SymbolId(3): ScopeId(4294967294) @@ -1130,52 +1130,6 @@ Symbol scope ID mismatch for "x": after transform: SymbolId(3): ScopeId(3) rebuilt : SymbolId(11): ScopeId(3) -tasks/coverage/test262/test/built-ins/AsyncFromSyncIteratorPrototype/next/for-await-iterator-next-rejected-promise-close.js -semantic error: Bindings mismatch: -after transform: ScopeId(4): [] -rebuilt : ScopeId(4): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -Bindings mismatch: -after transform: ScopeId(5): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(5): [] -Symbol scope ID mismatch for "_iteratorAbruptCompletion": -after transform: SymbolId(8): ScopeId(5) -rebuilt : SymbolId(5): ScopeId(4) -Symbol scope ID mismatch for "_didIteratorError": -after transform: SymbolId(7): ScopeId(5) -rebuilt : SymbolId(6): ScopeId(4) -Symbol scope ID mismatch for "_iteratorError": -after transform: SymbolId(9): ScopeId(5) -rebuilt : SymbolId(7): ScopeId(4) -Symbol scope ID mismatch for "_iterator": -after transform: SymbolId(10): ScopeId(5) -rebuilt : SymbolId(8): ScopeId(4) -Symbol scope ID mismatch for "_step": -after transform: SymbolId(5): ScopeId(5) -rebuilt : SymbolId(9): ScopeId(4) - -tasks/coverage/test262/test/built-ins/AsyncFromSyncIteratorPrototype/next/for-await-next-rejected-promise-close.js -semantic error: Bindings mismatch: -after transform: ScopeId(4): [] -rebuilt : ScopeId(4): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -Bindings mismatch: -after transform: ScopeId(5): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(5): [] -Symbol scope ID mismatch for "_iteratorAbruptCompletion": -after transform: SymbolId(8): ScopeId(5) -rebuilt : SymbolId(5): ScopeId(4) -Symbol scope ID mismatch for "_didIteratorError": -after transform: SymbolId(7): ScopeId(5) -rebuilt : SymbolId(6): ScopeId(4) -Symbol scope ID mismatch for "_iteratorError": -after transform: SymbolId(9): ScopeId(5) -rebuilt : SymbolId(7): ScopeId(4) -Symbol scope ID mismatch for "_iterator": -after transform: SymbolId(10): ScopeId(5) -rebuilt : SymbolId(8): ScopeId(4) -Symbol scope ID mismatch for "_step": -after transform: SymbolId(5): ScopeId(5) -rebuilt : SymbolId(9): ScopeId(4) - tasks/coverage/test262/test/language/expressions/async-arrow-function/forbidden-ext/b2/async-arrow-function-forbidden-ext-indirect-access-own-prop-caller-get.js semantic error: Scope flags mismatch: after transform: ScopeId(2): ScopeFlags(Function) @@ -1265,68 +1219,6 @@ Scope children mismatch: after transform: ScopeId(2): [ScopeId(3)] rebuilt : ScopeId(4): [] -tasks/coverage/test262/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x10", "_x11", "_x12", "_x5", "_x6", "_x7", "_x8", "_x9", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x10", "_x11", "_x12", "_x2", "_x3", "_x4", "_x5", "_x6", "_x7", "_x8", "_x9", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2", "_x3", "_x4"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(5): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(6): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) -Symbol scope ID mismatch for "_x3": -after transform: SymbolId(7): ScopeId(1) -rebuilt : SymbolId(2): ScopeId(0) -Symbol scope ID mismatch for "_x4": -after transform: SymbolId(8): ScopeId(1) -rebuilt : SymbolId(3): ScopeId(0) - -tasks/coverage/test262/test/language/expressions/class/cpn-class-expr-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x3", "_x4", "_x5", "_x6", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x2", "_x3", "_x4", "_x5", "_x6", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) - -tasks/coverage/test262/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x3", "_x4", "_x5", "_x6", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x2", "_x3", "_x4", "_x5", "_x6", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) - -tasks/coverage/test262/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x3", "_x4", "_x5", "_x6", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x2", "_x3", "_x4", "_x5", "_x6", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) - tasks/coverage/test262/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-init.js semantic error: Scope children mismatch: after transform: ScopeId(6): [ScopeId(3)] @@ -3786,43 +3678,6 @@ Unresolved references mismatch: after transform: ["$DONE", "Object", "assert", "require"] rebuilt : ["$DONE", "Object", "_superprop_getMethod", "assert", "require"] -tasks/coverage/test262/test/language/expressions/optional-chaining/iteration-statement-for-of-type-error.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): [] -rebuilt : ScopeId(1): ["_ref"] -Bindings mismatch: -after transform: ScopeId(2): ["_ref", "key"] -rebuilt : ScopeId(2): ["key"] -Bindings mismatch: -after transform: ScopeId(3): [] -rebuilt : ScopeId(3): ["_ref2"] -Bindings mismatch: -after transform: ScopeId(4): ["_ref2", "key"] -rebuilt : ScopeId(4): ["key"] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(0): ScopeId(1) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(6): ScopeId(4) -rebuilt : SymbolId(2): ScopeId(3) - -tasks/coverage/test262/test/language/expressions/optional-chaining/iteration-statement-for.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["count", "count2", "obj", "obj2", "obj3", "touched"] -rebuilt : ScopeId(0): ["_obj3$a", "_undefined", "count", "count2", "obj", "obj2", "obj3", "touched"] -Bindings mismatch: -after transform: ScopeId(5): ["_undefined"] -rebuilt : ScopeId(5): [] -Bindings mismatch: -after transform: ScopeId(8): ["_obj3$a"] -rebuilt : ScopeId(8): [] -Symbol scope ID mismatch for "_undefined": -after transform: SymbolId(6): ScopeId(5) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_obj3$a": -after transform: SymbolId(7): ScopeId(8) -rebuilt : SymbolId(1): ScopeId(0) - tasks/coverage/test262/test/language/module-code/export-default-asyncfunction-declaration-binding.js semantic error: Symbol flags mismatch for "_A": after transform: SymbolId(1): SymbolFlags(FunctionScopedVariable) @@ -4047,24 +3902,60 @@ after transform: SymbolId(0): ScopeId(3) rebuilt : SymbolId(1): ScopeId(0) tasks/coverage/test262/test/language/statements/async-function/unscopables-with-in-nested-fn.js -semantic error: Symbol flags mismatch for "ref": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_asyncToGenerator", "_ref", "callCount", "count", "v"] +rebuilt : ScopeId(0): ["_asyncToGenerator", "callCount", "count", "v"] +Bindings mismatch: +after transform: ScopeId(1): ["ref"] +rebuilt : ScopeId(1): ["_ref", "ref"] +Symbol flags mismatch for "ref": after transform: SymbolId(3): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(4): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(7): ScopeId(0) +rebuilt : SymbolId(6): ScopeId(1) tasks/coverage/test262/test/language/statements/async-function/unscopables-with.js -semantic error: Symbol flags mismatch for "ref": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_asyncToGenerator", "_ref", "callCount", "count", "v"] +rebuilt : ScopeId(0): ["_asyncToGenerator", "callCount", "count", "v"] +Bindings mismatch: +after transform: ScopeId(1): ["ref"] +rebuilt : ScopeId(1): ["_ref", "ref"] +Symbol flags mismatch for "ref": after transform: SymbolId(3): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(4): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(7): ScopeId(0) +rebuilt : SymbolId(6): ScopeId(1) tasks/coverage/test262/test/language/statements/async-generator/unscopables-with-in-nested-fn.js -semantic error: Symbol flags mismatch for "ref": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_ref", "_wrapAsyncGenerator", "callCount", "count", "v"] +rebuilt : ScopeId(0): ["_wrapAsyncGenerator", "callCount", "count", "v"] +Bindings mismatch: +after transform: ScopeId(1): ["ref"] +rebuilt : ScopeId(1): ["_ref", "ref"] +Symbol flags mismatch for "ref": after transform: SymbolId(3): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(4): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(7): ScopeId(0) +rebuilt : SymbolId(6): ScopeId(1) tasks/coverage/test262/test/language/statements/async-generator/unscopables-with.js -semantic error: Symbol flags mismatch for "ref": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_ref", "_wrapAsyncGenerator", "callCount", "count", "v"] +rebuilt : ScopeId(0): ["_wrapAsyncGenerator", "callCount", "count", "v"] +Bindings mismatch: +after transform: ScopeId(1): ["ref"] +rebuilt : ScopeId(1): ["_ref", "ref"] +Symbol flags mismatch for "ref": after transform: SymbolId(3): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(4): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(7): ScopeId(0) +rebuilt : SymbolId(6): ScopeId(1) tasks/coverage/test262/test/language/statements/class/async-gen-method/dflt-params-abrupt.js semantic error: Scope children mismatch: @@ -4110,68 +4001,6 @@ Scope children mismatch: after transform: ScopeId(2): [ScopeId(3)] rebuilt : ScopeId(4): [] -tasks/coverage/test262/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x10", "_x11", "_x12", "_x5", "_x6", "_x7", "_x8", "_x9", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x10", "_x11", "_x12", "_x2", "_x3", "_x4", "_x5", "_x6", "_x7", "_x8", "_x9", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2", "_x3", "_x4"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(5): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(6): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) -Symbol scope ID mismatch for "_x3": -after transform: SymbolId(7): ScopeId(1) -rebuilt : SymbolId(2): ScopeId(0) -Symbol scope ID mismatch for "_x4": -after transform: SymbolId(8): ScopeId(1) -rebuilt : SymbolId(3): ScopeId(0) - -tasks/coverage/test262/test/language/statements/class/cpn-class-decl-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x3", "_x4", "_x5", "_x6", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x2", "_x3", "_x4", "_x5", "_x6", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) - -tasks/coverage/test262/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x3", "_x4", "_x5", "_x6", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x2", "_x3", "_x4", "_x5", "_x6", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) - -tasks/coverage/test262/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-assignment-expression-coalesce.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_x3", "_x4", "_x5", "_x6", "c", "x"] -rebuilt : ScopeId(0): ["C", "_x", "_x2", "_x3", "_x4", "_x5", "_x6", "c", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_x", "_x2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_x": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_x2": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(1): ScopeId(0) - tasks/coverage/test262/test/language/statements/class/definition/methods-async-super-call-param.js semantic error: Symbol reference IDs mismatch for "_superprop_getMethod": after transform: SymbolId(5): [ReferenceId(8)] @@ -6165,9 +5994,18 @@ after transform: SymbolId(4): ScopeId(2) rebuilt : SymbolId(12): ScopeId(7) tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-id-put-unresolvable-no-strict.js -semantic error: Symbol flags mismatch for "fn": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_asyncIterator", "_asyncToGenerator", "_fn"] +rebuilt : ScopeId(0): ["_asyncIterator", "_asyncToGenerator"] +Bindings mismatch: +after transform: ScopeId(1): ["fn", "iterCount", "promise"] +rebuilt : ScopeId(1): ["_fn", "fn", "iterCount", "promise"] +Symbol flags mismatch for "fn": after transform: SymbolId(1): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(3): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_fn": +after transform: SymbolId(10): ScopeId(0) +rebuilt : SymbolId(4): ScopeId(1) tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-prop-elem-init-fn-name-class.js semantic error: Bindings mismatch: @@ -6203,139 +6041,29 @@ after transform: SymbolId(4): ScopeId(2) rebuilt : SymbolId(12): ScopeId(7) tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-prop-put-unresolvable-no-strict.js -semantic error: Symbol flags mismatch for "fn": -after transform: SymbolId(1): SymbolFlags(BlockScopedVariable | Function) -rebuilt : SymbolId(3): SymbolFlags(FunctionScopedVariable) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-descriptors.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] +after transform: ScopeId(0): ["_asyncIterator", "_asyncToGenerator", "_fn"] +rebuilt : ScopeId(0): ["_asyncIterator", "_asyncToGenerator"] Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-empty-obj.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(11): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) +after transform: ScopeId(1): ["fn", "iterCount", "promise"] +rebuilt : ScopeId(1): ["_fn", "fn", "iterCount", "promise"] +Symbol flags mismatch for "fn": +after transform: SymbolId(1): SymbolFlags(BlockScopedVariable | Function) +rebuilt : SymbolId(3): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_fn": +after transform: SymbolId(10): ScopeId(0) +rebuilt : SymbolId(4): ScopeId(1) tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-getter.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Scope children mismatch: +semantic error: Scope children mismatch: after transform: ScopeId(7): [ScopeId(2)] rebuilt : ScopeId(5): [ScopeId(6), ScopeId(7)] Scope parent mismatch: after transform: ScopeId(3): Some(ScopeId(2)) rebuilt : ScopeId(6): Some(ScopeId(5)) -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(7): [] Scope children mismatch: after transform: ScopeId(2): [ScopeId(3), ScopeId(4)] rebuilt : ScopeId(7): [ScopeId(8)] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-number.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(11): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-same-name.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(15): ScopeId(2) -rebuilt : SymbolId(16): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-skip-non-enumerable.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-str-val.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(11): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-symbol-val.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(11): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-to-property-with-setter.js -semantic error: Bindings mismatch: -after transform: ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(5): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(4): ["_step$value"] -rebuilt : ScopeId(8): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(14): ScopeId(4) -rebuilt : SymbolId(16): ScopeId(5) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-to-property.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(11): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-func-decl-dstr-obj-rest-valid-object.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(13): ScopeId(2) -rebuilt : SymbolId(15): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js semantic error: Bindings mismatch: @@ -7890,42 +7618,33 @@ rebuilt : SymbolId(15): ScopeId(4) tasks/coverage/test262/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-getter.js semantic error: Bindings mismatch: -after transform: ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(5): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "x"] Bindings mismatch: -after transform: ScopeId(4): ["_step$value", "x"] +after transform: ScopeId(4): ["x"] rebuilt : ScopeId(8): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(14): ScopeId(4) -rebuilt : SymbolId(16): ScopeId(5) Symbol scope ID mismatch for "x": after transform: SymbolId(4): ScopeId(4) rebuilt : SymbolId(17): ScopeId(5) tasks/coverage/test262/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js semantic error: Bindings mismatch: -after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(4): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "rest"] Bindings mismatch: -after transform: ScopeId(3): ["_step$value", "rest"] +after transform: ScopeId(3): ["rest"] rebuilt : ScopeId(7): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(14): ScopeId(3) -rebuilt : SymbolId(16): ScopeId(4) Symbol scope ID mismatch for "rest": after transform: SymbolId(4): ScopeId(3) rebuilt : SymbolId(17): ScopeId(4) tasks/coverage/test262/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-val-obj.js semantic error: Bindings mismatch: -after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(4): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "a", "b", "rest"] Bindings mismatch: -after transform: ScopeId(3): ["_step$value", "a", "b", "rest"] +after transform: ScopeId(3): ["a", "b", "rest"] rebuilt : ScopeId(7): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(15): ScopeId(3) -rebuilt : SymbolId(15): ScopeId(4) Symbol scope ID mismatch for "a": after transform: SymbolId(3): ScopeId(3) rebuilt : SymbolId(16): ScopeId(4) @@ -8334,7 +8053,7 @@ rebuilt : SymbolId(12): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-getter.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "x"] Scope children mismatch: after transform: ScopeId(7): [ScopeId(2)] @@ -8343,42 +8062,33 @@ Scope parent mismatch: after transform: ScopeId(3): Some(ScopeId(2)) rebuilt : ScopeId(6): Some(ScopeId(5)) Bindings mismatch: -after transform: ScopeId(2): ["_step$value", "x"] +after transform: ScopeId(2): ["x"] rebuilt : ScopeId(7): [] Scope children mismatch: after transform: ScopeId(2): [ScopeId(3), ScopeId(4)] rebuilt : ScopeId(7): [ScopeId(8)] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(11): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) Symbol scope ID mismatch for "x": after transform: SymbolId(3): ScopeId(2) rebuilt : SymbolId(14): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-skip-non-enumerable.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "rest"] Bindings mismatch: -after transform: ScopeId(2): ["_step$value", "rest"] +after transform: ScopeId(2): ["rest"] rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(11): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) Symbol scope ID mismatch for "rest": after transform: SymbolId(3): ScopeId(2) rebuilt : SymbolId(14): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-val-obj.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "a", "b", "rest"] Bindings mismatch: -after transform: ScopeId(2): ["_step$value", "a", "b", "rest"] +after transform: ScopeId(2): ["a", "b", "rest"] rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(12): ScopeId(3) Symbol scope ID mismatch for "a": after transform: SymbolId(2): ScopeId(2) rebuilt : SymbolId(13): ScopeId(3) @@ -8456,9 +8166,18 @@ after transform: SymbolId(4): ScopeId(2) rebuilt : SymbolId(13): ScopeId(7) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-id-put-unresolvable-no-strict.js -semantic error: Symbol flags mismatch for "fn": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_asyncIterator", "_awaitAsyncGenerator", "_fn", "_wrapAsyncGenerator"] +rebuilt : ScopeId(0): ["_asyncIterator", "_awaitAsyncGenerator", "_wrapAsyncGenerator"] +Bindings mismatch: +after transform: ScopeId(1): ["fn", "iterCount", "promise"] +rebuilt : ScopeId(1): ["_fn", "fn", "iterCount", "promise"] +Symbol flags mismatch for "fn": after transform: SymbolId(1): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(4): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_fn": +after transform: SymbolId(11): ScopeId(0) +rebuilt : SymbolId(5): ScopeId(1) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-prop-elem-init-fn-name-class.js semantic error: Bindings mismatch: @@ -8494,139 +8213,29 @@ after transform: SymbolId(4): ScopeId(2) rebuilt : SymbolId(13): ScopeId(7) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-prop-put-unresolvable-no-strict.js -semantic error: Symbol flags mismatch for "fn": -after transform: SymbolId(1): SymbolFlags(BlockScopedVariable | Function) -rebuilt : SymbolId(4): SymbolFlags(FunctionScopedVariable) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-descriptors.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] +after transform: ScopeId(0): ["_asyncIterator", "_awaitAsyncGenerator", "_fn", "_wrapAsyncGenerator"] +rebuilt : ScopeId(0): ["_asyncIterator", "_awaitAsyncGenerator", "_wrapAsyncGenerator"] Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(13): ScopeId(2) -rebuilt : SymbolId(15): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-empty-obj.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) +after transform: ScopeId(1): ["fn", "iterCount", "promise"] +rebuilt : ScopeId(1): ["_fn", "fn", "iterCount", "promise"] +Symbol flags mismatch for "fn": +after transform: SymbolId(1): SymbolFlags(BlockScopedVariable | Function) +rebuilt : SymbolId(4): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_fn": +after transform: SymbolId(11): ScopeId(0) +rebuilt : SymbolId(5): ScopeId(1) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-getter.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Scope children mismatch: +semantic error: Scope children mismatch: after transform: ScopeId(7): [ScopeId(2)] rebuilt : ScopeId(5): [ScopeId(6), ScopeId(7)] Scope parent mismatch: after transform: ScopeId(3): Some(ScopeId(2)) rebuilt : ScopeId(6): Some(ScopeId(5)) -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(7): [] Scope children mismatch: after transform: ScopeId(2): [ScopeId(3), ScopeId(4)] rebuilt : ScopeId(7): [ScopeId(8)] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(13): ScopeId(2) -rebuilt : SymbolId(15): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-number.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-same-name.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(16): ScopeId(2) -rebuilt : SymbolId(17): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-skip-non-enumerable.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(13): ScopeId(2) -rebuilt : SymbolId(15): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-str-val.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-symbol-val.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-to-property-with-setter.js -semantic error: Bindings mismatch: -after transform: ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(5): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(4): ["_step$value"] -rebuilt : ScopeId(8): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(15): ScopeId(4) -rebuilt : SymbolId(17): ScopeId(5) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-to-property.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) - -tasks/coverage/test262/test/language/statements/for-await-of/async-gen-decl-dstr-obj-rest-valid-object.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] -rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] -Bindings mismatch: -after transform: ScopeId(2): ["_step$value"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(14): ScopeId(2) -rebuilt : SymbolId(16): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js semantic error: Bindings mismatch: @@ -10181,42 +9790,33 @@ rebuilt : SymbolId(15): ScopeId(4) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-getter.js semantic error: Bindings mismatch: -after transform: ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(5): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "x"] Bindings mismatch: -after transform: ScopeId(4): ["_step$value", "x"] +after transform: ScopeId(4): ["x"] rebuilt : ScopeId(8): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(15): ScopeId(4) -rebuilt : SymbolId(16): ScopeId(5) Symbol scope ID mismatch for "x": after transform: SymbolId(4): ScopeId(4) rebuilt : SymbolId(17): ScopeId(5) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js semantic error: Bindings mismatch: -after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(4): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "rest"] Bindings mismatch: -after transform: ScopeId(3): ["_step$value", "rest"] +after transform: ScopeId(3): ["rest"] rebuilt : ScopeId(7): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(15): ScopeId(3) -rebuilt : SymbolId(16): ScopeId(4) Symbol scope ID mismatch for "rest": after transform: SymbolId(4): ScopeId(3) rebuilt : SymbolId(17): ScopeId(4) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-val-obj.js semantic error: Bindings mismatch: -after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(2): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(4): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "a", "b", "rest"] Bindings mismatch: -after transform: ScopeId(3): ["_step$value", "a", "b", "rest"] +after transform: ScopeId(3): ["a", "b", "rest"] rebuilt : ScopeId(7): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(16): ScopeId(3) -rebuilt : SymbolId(15): ScopeId(4) Symbol scope ID mismatch for "a": after transform: SymbolId(3): ScopeId(3) rebuilt : SymbolId(16): ScopeId(4) @@ -10625,7 +10225,7 @@ rebuilt : SymbolId(13): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-getter.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "x"] Scope children mismatch: after transform: ScopeId(7): [ScopeId(2)] @@ -10634,42 +10234,33 @@ Scope parent mismatch: after transform: ScopeId(3): Some(ScopeId(2)) rebuilt : ScopeId(6): Some(ScopeId(5)) Bindings mismatch: -after transform: ScopeId(2): ["_step$value", "x"] +after transform: ScopeId(2): ["x"] rebuilt : ScopeId(7): [] Scope children mismatch: after transform: ScopeId(2): [ScopeId(3), ScopeId(4)] rebuilt : ScopeId(7): [ScopeId(8)] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) Symbol scope ID mismatch for "x": after transform: SymbolId(3): ScopeId(2) rebuilt : SymbolId(15): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-skip-non-enumerable.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "rest"] Bindings mismatch: -after transform: ScopeId(2): ["_step$value", "rest"] +after transform: ScopeId(2): ["rest"] rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(12): ScopeId(2) -rebuilt : SymbolId(14): ScopeId(3) Symbol scope ID mismatch for "rest": after transform: SymbolId(3): ScopeId(2) rebuilt : SymbolId(15): ScopeId(3) tasks/coverage/test262/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-val-obj.js semantic error: Bindings mismatch: -after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step"] +after transform: ScopeId(1): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value"] rebuilt : ScopeId(3): ["_didIteratorError", "_iterator", "_iteratorAbruptCompletion", "_iteratorError", "_step", "_step$value", "a", "b", "rest"] Bindings mismatch: -after transform: ScopeId(2): ["_step$value", "a", "b", "rest"] +after transform: ScopeId(2): ["a", "b", "rest"] rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_step$value": -after transform: SymbolId(13): ScopeId(2) -rebuilt : SymbolId(13): ScopeId(3) Symbol scope ID mismatch for "a": after transform: SymbolId(2): ScopeId(2) rebuilt : SymbolId(14): ScopeId(3) @@ -10752,480 +10343,88 @@ Symbol scope ID mismatch for "x": after transform: SymbolId(4): ScopeId(2) rebuilt : SymbolId(12): ScopeId(3) -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-computed-property-no-strict.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "counter"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "counter"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(2) -rebuilt : SymbolId(5): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-computed-property.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-descriptors.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "obj", "rest"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "obj", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(5): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(4): ScopeId(2) -rebuilt : SymbolId(6): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-empty-obj.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "rest"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(2) -rebuilt : SymbolId(5): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-getter-abrupt-get-error.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): [] -rebuilt : ScopeId(1): ["_ref", "_ref2"] -Bindings mismatch: -after transform: ScopeId(2): ["_ref"] -rebuilt : ScopeId(2): [] -Bindings mismatch: -after transform: ScopeId(4): ["_ref2"] -rebuilt : ScopeId(4): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(3): ScopeId(2) -rebuilt : SymbolId(5): ScopeId(1) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(4): ScopeId(4) -rebuilt : SymbolId(6): ScopeId(1) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-getter.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "count", "counter", "x"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "count", "counter", "x"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(3): ["_ref2"] -rebuilt : ScopeId(3): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(5): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(4): ScopeId(3) -rebuilt : SymbolId(6): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-non-string-computed-property-1.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-non-string-computed-property-1dot.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-non-string-computed-property-1dot0.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-non-string-computed-property-1e0.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-non-string-computed-property-array-1.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-non-string-computed-property-array-1e0.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-non-string-computed-property-string-1.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_objectWithoutProperties", "_toPropertyKey", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_objectWithoutProperties", "_ref", "_ref2", "_toPropertyKey", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-number.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "rest"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(2) -rebuilt : SymbolId(5): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-order.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "calls", "counter", "o", "rest"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "calls", "counter", "o", "rest"] -Bindings mismatch: -after transform: ScopeId(5): ["_ref"] -rebuilt : ScopeId(5): [] -Bindings mismatch: -after transform: ScopeId(6): ["_ref2"] -rebuilt : ScopeId(6): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(5) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(6) -rebuilt : SymbolId(7): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-put-const.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): [] -rebuilt : ScopeId(1): ["_ref", "_ref2"] -Bindings mismatch: -after transform: ScopeId(2): ["_ref"] -rebuilt : ScopeId(2): [] -Bindings mismatch: -after transform: ScopeId(3): ["_ref2"] -rebuilt : ScopeId(3): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(2) -rebuilt : SymbolId(4): ScopeId(1) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(3) -rebuilt : SymbolId(5): ScopeId(1) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-same-name.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_excluded", "_objectWithoutProperties", "counter", "keys", "o", "x", "y", "z"] -rebuilt : ScopeId(0): ["_excluded", "_objectWithoutProperties", "_ref", "_ref2", "counter", "keys", "o", "x", "y", "z"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(6): ScopeId(1) -rebuilt : SymbolId(7): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(7): ScopeId(2) -rebuilt : SymbolId(8): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-skip-non-enumerable.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "obj", "rest"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "obj", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(5): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(4): ScopeId(2) -rebuilt : SymbolId(6): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-str-val.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "rest"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(2) -rebuilt : SymbolId(5): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-symbol-val.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "rest"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(2) -rebuilt : SymbolId(5): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-to-property-with-setter.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "executedGetter", "settedValue", "src"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "executedGetter", "settedValue", "src"] -Bindings mismatch: -after transform: ScopeId(3): ["_ref"] -rebuilt : ScopeId(3): [] -Bindings mismatch: -after transform: ScopeId(4): ["_ref2"] -rebuilt : ScopeId(4): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(5): ScopeId(3) -rebuilt : SymbolId(7): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(6): ScopeId(4) -rebuilt : SymbolId(8): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-to-property.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "counter", "src"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "counter", "src"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(2) -rebuilt : SymbolId(5): ScopeId(0) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-val-null.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): [] -rebuilt : ScopeId(1): ["_ref", "_ref2"] -Bindings mismatch: -after transform: ScopeId(2): ["_ref"] -rebuilt : ScopeId(2): [] -Bindings mismatch: -after transform: ScopeId(3): ["_ref2"] -rebuilt : ScopeId(3): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(2) -rebuilt : SymbolId(4): ScopeId(1) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(3) -rebuilt : SymbolId(5): ScopeId(1) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-val-undefined.js -semantic error: Bindings mismatch: -after transform: ScopeId(1): [] -rebuilt : ScopeId(1): ["_ref", "_ref2"] -Bindings mismatch: -after transform: ScopeId(2): ["_ref"] -rebuilt : ScopeId(2): [] -Bindings mismatch: -after transform: ScopeId(3): ["_ref2"] -rebuilt : ScopeId(3): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(2): ScopeId(2) -rebuilt : SymbolId(4): ScopeId(1) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(3): ScopeId(3) -rebuilt : SymbolId(5): ScopeId(1) - -tasks/coverage/test262/test/language/statements/for-of/dstr/obj-rest-valid-object.js -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_excluded", "_objectWithoutProperties", "a", "b", "counter", "rest"] -rebuilt : ScopeId(0): ["_excluded", "_objectWithoutProperties", "_ref", "_ref2", "a", "b", "counter", "rest"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref2"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(5): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) - tasks/coverage/test262/test/language/statements/for-of/dstr/var-obj-ptrn-rest-getter.js semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "count", "iterCount", "x"] +after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "count", "iterCount", "x"] rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "count", "iterCount"] Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: after transform: ScopeId(3): [] rebuilt : ScopeId(3): ["x"] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) tasks/coverage/test262/test/language/statements/for-of/dstr/var-obj-ptrn-rest-skip-non-enumerable.js semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "iterCount", "o", "rest"] +after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "iterCount", "o", "rest"] rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "iterCount", "o"] Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: after transform: ScopeId(2): [] rebuilt : ScopeId(2): ["rest"] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(3): ScopeId(1) -rebuilt : SymbolId(4): ScopeId(0) tasks/coverage/test262/test/language/statements/for-of/dstr/var-obj-ptrn-rest-val-obj.js semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_excluded", "_objectWithoutProperties", "a", "b", "iterCount", "rest"] +after transform: ScopeId(0): ["_excluded", "_objectWithoutProperties", "_ref", "a", "b", "iterCount", "rest"] rebuilt : ScopeId(0): ["_excluded", "_objectWithoutProperties", "_ref", "iterCount"] Bindings mismatch: -after transform: ScopeId(1): ["_ref"] -rebuilt : ScopeId(1): [] -Bindings mismatch: after transform: ScopeId(2): [] rebuilt : ScopeId(2): ["a", "b", "rest"] -Symbol scope ID mismatch for "_ref": -after transform: SymbolId(4): ScopeId(1) -rebuilt : SymbolId(3): ScopeId(0) tasks/coverage/test262/test/language/statements/switch/scope-lex-async-function.js -semantic error: Symbol flags mismatch for "x": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_asyncToGenerator", "_x"] +rebuilt : ScopeId(0): ["_asyncToGenerator"] +Bindings mismatch: +after transform: ScopeId(1): ["x"] +rebuilt : ScopeId(1): ["_x", "x"] +Symbol flags mismatch for "x": after transform: SymbolId(0): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(1): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_x": +after transform: SymbolId(1): ScopeId(0) +rebuilt : SymbolId(2): ScopeId(1) tasks/coverage/test262/test/language/statements/switch/scope-lex-async-generator.js -semantic error: Symbol flags mismatch for "x": +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_wrapAsyncGenerator", "_x"] +rebuilt : ScopeId(0): ["_wrapAsyncGenerator"] +Bindings mismatch: +after transform: ScopeId(1): ["x"] +rebuilt : ScopeId(1): ["_x", "x"] +Symbol flags mismatch for "x": after transform: SymbolId(0): SymbolFlags(BlockScopedVariable | Function) rebuilt : SymbolId(1): SymbolFlags(FunctionScopedVariable) +Symbol scope ID mismatch for "_x": +after transform: SymbolId(1): ScopeId(0) +rebuilt : SymbolId(2): ScopeId(1) + +tasks/coverage/test262/test/language/statements/try/dstr/obj-ptrn-rest-getter.js +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "count", "ranCatch"] +rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "count", "ranCatch"] +Bindings mismatch: +after transform: ScopeId(4): ["x"] +rebuilt : ScopeId(4): ["_ref", "x"] +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(3): ScopeId(0) +rebuilt : SymbolId(4): ScopeId(4) + +tasks/coverage/test262/test/language/statements/try/dstr/obj-ptrn-rest-skip-non-enumerable.js +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "o", "ranCatch"] +rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "o", "ranCatch"] +Bindings mismatch: +after transform: ScopeId(3): ["rest"] +rebuilt : ScopeId(3): ["_ref", "rest"] +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(3): ScopeId(0) +rebuilt : SymbolId(4): ScopeId(3) + +tasks/coverage/test262/test/language/statements/try/dstr/obj-ptrn-rest-val-obj.js +semantic error: Bindings mismatch: +after transform: ScopeId(0): ["_excluded", "_objectWithoutProperties", "_ref", "ranCatch"] +rebuilt : ScopeId(0): ["_excluded", "_objectWithoutProperties", "ranCatch"] +Bindings mismatch: +after transform: ScopeId(3): ["a", "b", "rest"] +rebuilt : ScopeId(3): ["_ref", "a", "b", "rest"] +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(4): ScopeId(0) +rebuilt : SymbolId(3): ScopeId(3) diff --git a/tasks/coverage/snapshots/semantic_typescript.snap b/tasks/coverage/snapshots/semantic_typescript.snap index b4557fdd6f4d78..da04202df47eb3 100644 --- a/tasks/coverage/snapshots/semantic_typescript.snap +++ b/tasks/coverage/snapshots/semantic_typescript.snap @@ -2,7 +2,7 @@ commit: df9d1650 semantic_typescript Summary: AST Parsed : 6490/6490 (100.00%) -Positive Passed: 2660/6490 (40.99%) +Positive Passed: 2663/6490 (41.03%) tasks/coverage/typescript/tests/cases/compiler/2dArrays.ts semantic error: Symbol reference IDs mismatch for "Cell": after transform: SymbolId(0): [ReferenceId(1)] @@ -25057,26 +25057,6 @@ Scope flags mismatch: after transform: ScopeId(2): ScopeFlags(StrictMode | Function) rebuilt : ScopeId(2): ScopeFlags(Function) -tasks/coverage/typescript/tests/cases/compiler/nestedObjectRest.ts -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "x", "y"] -rebuilt : ScopeId(0): ["_extends", "_objectDestructuringEmpty", "_ref", "_ref2", "_ref3", "_ref4", "_ref5", "x", "y"] -Bindings mismatch: -after transform: ScopeId(1): ["_ref3"] -rebuilt : ScopeId(1): [] -Bindings mismatch: -after transform: ScopeId(2): ["_ref4", "_ref5"] -rebuilt : ScopeId(2): [] -Symbol scope ID mismatch for "_ref3": -after transform: SymbolId(6): ScopeId(1) -rebuilt : SymbolId(6): ScopeId(0) -Symbol scope ID mismatch for "_ref4": -after transform: SymbolId(7): ScopeId(2) -rebuilt : SymbolId(7): ScopeId(0) -Symbol scope ID mismatch for "_ref5": -after transform: SymbolId(8): ScopeId(2) -rebuilt : SymbolId(8): ScopeId(0) - tasks/coverage/typescript/tests/cases/compiler/nestedSelf.ts semantic error: Missing SymbolId: "M" Missing SymbolId: "_M" @@ -39956,20 +39936,11 @@ rebuilt : [] tasks/coverage/typescript/tests/cases/conformance/classes/members/instanceAndStaticMembers/thisAndSuperInStaticMembers1.ts semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_extends", "_objectDestructuringEmpty"] +after transform: ScopeId(0): ["C", "_extends", "_objectDestructuringEmpty", "_this", "_this2", "_x"] rebuilt : ScopeId(0): ["C", "_extends", "_objectDestructuringEmpty", "_this", "_this2"] Scope children mismatch: after transform: ScopeId(0): [ScopeId(1), ScopeId(4)] rebuilt : ScopeId(0): [ScopeId(1)] -Bindings mismatch: -after transform: ScopeId(4): ["_this", "_this2", "_x"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_this": -after transform: SymbolId(1): ScopeId(4) -rebuilt : SymbolId(2): ScopeId(0) -Symbol scope ID mismatch for "_this2": -after transform: SymbolId(2): ScopeId(4) -rebuilt : SymbolId(3): ScopeId(0) Reference symbol mismatch for "_x": after transform: SymbolId(3) "_x" rebuilt : @@ -39991,20 +39962,11 @@ rebuilt : ["B", "_x", "require", "undefined"] tasks/coverage/typescript/tests/cases/conformance/classes/members/instanceAndStaticMembers/thisAndSuperInStaticMembers2.ts semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C", "_extends", "_objectDestructuringEmpty"] +after transform: ScopeId(0): ["C", "_extends", "_objectDestructuringEmpty", "_this", "_this2", "_x"] rebuilt : ScopeId(0): ["C", "_extends", "_objectDestructuringEmpty", "_this", "_this2"] Scope children mismatch: after transform: ScopeId(0): [ScopeId(1), ScopeId(4)] rebuilt : ScopeId(0): [ScopeId(1)] -Bindings mismatch: -after transform: ScopeId(4): ["_this", "_this2", "_x"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_this": -after transform: SymbolId(1): ScopeId(4) -rebuilt : SymbolId(2): ScopeId(0) -Symbol scope ID mismatch for "_this2": -after transform: SymbolId(2): ScopeId(4) -rebuilt : SymbolId(3): ScopeId(0) Reference symbol mismatch for "_x": after transform: SymbolId(3) "_x" rebuilt : @@ -40025,38 +39987,14 @@ after transform: ["B", "require", "undefined"] rebuilt : ["B", "_x", "require", "undefined"] tasks/coverage/typescript/tests/cases/conformance/classes/members/instanceAndStaticMembers/thisAndSuperInStaticMembers3.ts -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C"] -rebuilt : ScopeId(0): ["C", "_this", "_this2"] -Scope children mismatch: +semantic error: Scope children mismatch: after transform: ScopeId(0): [ScopeId(1), ScopeId(4)] rebuilt : ScopeId(0): [ScopeId(1)] -Bindings mismatch: -after transform: ScopeId(4): ["_this", "_this2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_this": -after transform: SymbolId(1): ScopeId(4) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_this2": -after transform: SymbolId(2): ScopeId(4) -rebuilt : SymbolId(1): ScopeId(0) tasks/coverage/typescript/tests/cases/conformance/classes/members/instanceAndStaticMembers/thisAndSuperInStaticMembers4.ts -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["C"] -rebuilt : ScopeId(0): ["C", "_this", "_this2"] -Scope children mismatch: +semantic error: Scope children mismatch: after transform: ScopeId(0): [ScopeId(1), ScopeId(4)] rebuilt : ScopeId(0): [ScopeId(1)] -Bindings mismatch: -after transform: ScopeId(4): ["_this", "_this2"] -rebuilt : ScopeId(1): [] -Symbol scope ID mismatch for "_this": -after transform: SymbolId(1): ScopeId(4) -rebuilt : SymbolId(0): ScopeId(0) -Symbol scope ID mismatch for "_this2": -after transform: SymbolId(2): ScopeId(4) -rebuilt : SymbolId(1): ScopeId(0) tasks/coverage/typescript/tests/cases/conformance/classes/members/instanceAndStaticMembers/typeOfThisInInstanceMember2.ts semantic error: Bindings mismatch: @@ -46511,17 +46449,6 @@ semantic error: Scope children mismatch: after transform: ScopeId(0): [ScopeId(1)] rebuilt : ScopeId(0): [] -tasks/coverage/typescript/tests/cases/conformance/expressions/nullishCoalescingOperator/nullishCoalescingOperator12.ts -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["obj"] -rebuilt : ScopeId(0): ["_obj$arr", "obj"] -Bindings mismatch: -after transform: ScopeId(1): ["_obj$arr", "i"] -rebuilt : ScopeId(1): ["i"] -Symbol scope ID mismatch for "_obj$arr": -after transform: SymbolId(2): ScopeId(1) -rebuilt : SymbolId(0): ScopeId(0) - tasks/coverage/typescript/tests/cases/conformance/expressions/nullishCoalescingOperator/nullishCoalescingOperator2.ts semantic error: Bindings mismatch: after transform: ScopeId(0): ["a1", "a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "aa1", "aa2", "aa3", "aa4", "aa5", "aa6", "aa7", "aa8", "aa9"] @@ -47659,17 +47586,6 @@ Unresolved references mismatch: after transform: [] rebuilt : ["o1", "o2", "o3", "o4", "o5", "o6"] -tasks/coverage/typescript/tests/cases/conformance/expressions/optionalChaining/optionalChainingInLoop.ts -semantic error: Bindings mismatch: -after transform: ScopeId(0): ["list"] -rebuilt : ScopeId(0): ["_item$t", "list"] -Bindings mismatch: -after transform: ScopeId(5): ["_item$t"] -rebuilt : ScopeId(5): [] -Symbol scope ID mismatch for "_item$t": -after transform: SymbolId(4): ScopeId(5) -rebuilt : SymbolId(4): ScopeId(0) - tasks/coverage/typescript/tests/cases/conformance/expressions/optionalChaining/optionalChainingInParameterBindingPattern.ts semantic error: Scope children mismatch: after transform: ScopeId(0): [ScopeId(1), ScopeId(2)] @@ -56151,22 +56067,16 @@ semantic error: Scope children mismatch: after transform: ScopeId(0): [ScopeId(1), ScopeId(2)] rebuilt : ScopeId(0): [ScopeId(1)] -tasks/coverage/typescript/tests/cases/conformance/types/rest/objectRestForOf.ts +tasks/coverage/typescript/tests/cases/conformance/types/rest/objectRestCatchES5.ts semantic error: Bindings mismatch: -after transform: ScopeId(0): ["_excluded", "_excluded2", "_objectSpread", "_objectWithoutProperties", "array", "rrestOff", "xx"] -rebuilt : ScopeId(0): ["_excluded", "_excluded2", "_objectSpread", "_objectWithoutProperties", "_ref2", "_ref3", "array", "rrestOff", "xx"] -Bindings mismatch: -after transform: ScopeId(3): ["_ref2"] -rebuilt : ScopeId(3): [] +after transform: ScopeId(0): ["_excluded", "_objectWithoutProperties", "_ref", "a", "b"] +rebuilt : ScopeId(0): ["_excluded", "_objectWithoutProperties", "a", "b"] Bindings mismatch: -after transform: ScopeId(4): ["_ref3"] -rebuilt : ScopeId(4): [] -Symbol scope ID mismatch for "_ref2": -after transform: SymbolId(10): ScopeId(3) -rebuilt : SymbolId(10): ScopeId(0) -Symbol scope ID mismatch for "_ref3": -after transform: SymbolId(11): ScopeId(4) -rebuilt : SymbolId(11): ScopeId(0) +after transform: ScopeId(3): ["a", "b"] +rebuilt : ScopeId(3): ["_ref", "a", "b"] +Symbol scope ID mismatch for "_ref": +after transform: SymbolId(4): ScopeId(0) +rebuilt : SymbolId(4): ScopeId(3) tasks/coverage/typescript/tests/cases/conformance/types/rest/objectRestParameter.ts semantic error: Scope children mismatch: