ladybird/Tests/LibJS/Runtime/functions
Andreas Kling 8a64784d46 LibJS: Check strict destructured parameter names
Run deferred parameter validation whenever the surrounding context is
already strict, not only when a function body contains a Use Strict
Directive. Destructured parameter names are collected while parsing the
parameter list, so eval and arguments bindings in patterns otherwise
escaped the strict-mode early error for functions and methods.

Add parser coverage for sloppy destructuring remaining accepted, strict
source being rejected, and class methods applying their strict context.
2026-05-22 01:56:57 +02:00
..
arrow-functions.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
constructor-basic.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-assignment-in-arguments.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-declaration-scoping-with-destructured-params.js LibJS: Fix scoping of function declarations with destructured params 2026-02-12 16:59:47 +01:00
function-default-parameters.js LibJS: Preserve no-In context in arrow bodies 2026-05-22 01:56:57 +02:00
function-destructuring-parameters.js LibJS: Check strict destructured parameter names 2026-05-22 01:56:57 +02:00
function-duplicate-parameters.js LibJS: Reject duplicate method parameters 2026-05-22 01:56:57 +02:00
function-evaluation-order.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-expression-scoping.js LibJS: Mark named function expression identifiers at individual level 2026-01-27 10:58:39 +01:00
function-hoisting.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-legacy-caller-arguments.js LibJS: Add sloppy function caller and arguments hooks 2026-05-22 01:56:57 +02:00
function-length.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-missing-arg.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-name.js LibJS: Avoid naming parenthesized assignment functions 2026-05-22 01:56:57 +02:00
function-nesting.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-new-target.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-prototype-writable.js LibJS: Materialize lazy function prototypes for own keys 2026-05-22 01:56:57 +02:00
function-rest-params.js Tests/LibJS: Add test for rest-only param with arguments object access 2026-02-10 02:05:20 +01:00
function-spread.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-strict-mode.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-this-in-arguments.js LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
function-TypeError.js LibJS: Separate raw and capturing native functions 2026-04-15 15:57:48 +02:00
method-functions-are-not-constructors.js LibJS: Do not expose prototypes on normal methods 2026-05-22 01:56:57 +02:00