Parent: #904; related #899 and #919.
The shared scanSuperAndArgs traversal skips expressions embedded in binding/assignment patterns. Destructuring declarations scan only their initializer; for-in/of scans omit the target, catch scans omit the binding, and parameter checks scan top-level defaults but not parameter patterns. Consequently await, yield, arguments, and super restrictions can be bypassed with pattern defaults or computed keys.
An 18-case differential against actual JSC and Node/V8 confirms 13 invalid programs accepted by both zig-js tree-walker and required VM. A statement preceding the invalid declaration executes, violating early-error non-execution. Two direct invalid controls reject and three valid nested-function/plain-pattern controls remain accepted.
Examples that must reject:
class C { static { if (false) { let [x = await 0] = []; } } }
class C { static { for (let [x = await 0] of []) {} } }
class C { static { try {} catch ([x = await 0]) {} } }
class C { x = () => { let {[arguments]: x} = {}; }; }
async function f([x = await 0]) {}
function* g({[yield 0]: x}) {}
class C extends Object { m() { let [x = super()] = []; } }Root fix: traverse pattern computed keys/defaults and nested/rest patterns everywhere the owning early-error scan runs, retaining the distinct boundaries for lexical arrows and ordinary functions. Do not classify binding identifiers as IdentifierReferences. Cover declarations, assignments, loops, catches, function/method/arrow parameters, nested patterns, and valid shadowing/function boundaries. Batch the related restrictions, verify early rejection in both execution modes, and compare affected test262 subtrees before/after.
Specification: ECMA-262 function/class early errors and recursive ContainsArguments semantics: https://tc39.es/ecma262/2026/multipage/ecmascript-language-functions-and-classes.html#sec-static-semantics-containsarguments
Diagnostic wording remains a separate #904/#899 requirement; this issue tracks the missed semantic checks, not a blanket exact-message parity claim.