All checks were successful
ci / fast (linux) (push) Successful in 6m19s
Add function property support to the JS engine (fn.prop = val, fn.prop, fn.method()) enabling the Test262 assert harness pattern. Implement Test262 execution mode in the JS262 harness with simplified sta.js/assert.js shims. Vendor 50 real tc39/test262 tests via curation script (35 pass, 15 known_fail). Engine changes: - JsObject: add Debug impl and has() method for presence checks - JsFunction: add properties field (Rc-shared JsObject) - Interpreter: handle function property get/set/call/compound-assign/update with user-property-over-builtin precedence Harness changes: - Add Test262 variant to Js262Mode with relaxed manifest validation - Implement run_test262_case with harness prepending and error classification - Create sta.js (Test262Error shim) and assert.js (assert.sameValue etc.) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
27 lines
556 B
JavaScript
27 lines
556 B
JavaScript
// Copyright (C) 2011 the V8 project authors. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
/*---
|
|
es6id: 13.1
|
|
description: >
|
|
catch parameter shadowing catch parameter
|
|
---*/
|
|
function fn() {
|
|
var c = 1;
|
|
try {
|
|
throw 'stuff3';
|
|
} catch (c) {
|
|
try {
|
|
throw 'stuff4';
|
|
} catch(c) {
|
|
assert.sameValue(c,'stuff4');
|
|
// catch parameter shadowing catch parameter
|
|
c = 3;
|
|
assert.sameValue(c, 3);
|
|
}
|
|
assert.sameValue(c, 'stuff3');
|
|
}
|
|
assert.sameValue(c, 1);
|
|
}
|
|
fn(1);
|
|
|