Parent #904; related #899, #920, #921, #922, #923.
On exact commit 877f25b, a compile-only Function-constructor differential matches 5/12 outcomes in tree and required-VM modes, while independent Node/V8 matches 12/12. Seven invalid programs are accepted; four valid controls and an already-rejected global private-name control agree.
Reproductions (each Function call must throw SyntaxError without execution):
Function('class C { m() { label: this.#missing; } }');
Function('class C { m() { let x; x ||= this.#missing; } }');
Function('class C { m() { this.#missing &&= 1; } }');
Function('class C { m() { let x; x ??= this.#missing; } }');
Function('with ({}) { super.x; }');
Function('with ({}) { super(); }');
Function('function f() { with ({}) { super.x; } }');The shared parser's checkPrivateUsesInNode does not visit labeled_stmt or logical_assign; scanSuperAndArgs does not visit with_stmt. These are ordinary recursive productions, not function/class scope boundaries. ECMA-262's 15.7.7 AllPrivateIdentifiersValid and 8.5.1 Contains require the missing children to participate.
Plan: restore traversal of both logical-assignment operands, labeled bodies, and with object/body; add negative compile and pre-side-effect eval tests in both modes plus valid declared-private-name/sloppy-with controls. Run targeted Debug units and before/after relevant class, logical assignment, with, eval and Function corpus scopes serially with the 3072 MB guard. Do not replace parse-time checks with runtime exceptions.
Baseline evidence retained locally in /private/tmp/zig-js-query-coverage-probe.ps5qiR/ with probe source /private/tmp/zig-js-query-coverage-probe-2026-09-15.js. Runner SHA-256: 26ab0e991077cd646f02c7d1bc8a88a35edd283c7ac10084bf658520236783a0.
No fix or test262 improvement claimed yet.