mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-02 14:19:48 +00:00
LibJS: Disallow member expression in binding pattern as parameters
This commit is contained in:
parent
51e23cd043
commit
156dfe3d62
Notes:
sideshowbarker
2024-07-17 23:18:23 +09:00
Author: https://github.com/davidot
Commit: 156dfe3d62
Pull-request: https://github.com/SerenityOS/serenity/pull/11088
Issue: https://github.com/SerenityOS/serenity/issues/11078
Reviewed-by: https://github.com/IdanHo
Reviewed-by: https://github.com/alimpfard
Reviewed-by: https://github.com/linusg ✅
2 changed files with 17 additions and 1 deletions
|
@ -46,6 +46,20 @@ describe("parsing", () => {
|
|||
expect(`const [ a, [ ...{length} ] ] = [];`).toEval();
|
||||
expect(`let [ a, [ ...{length} ] ] = [];`).toEval();
|
||||
});
|
||||
|
||||
test("function parameters cannot use member expresssions", () => {
|
||||
expect("function f([a.b]) {}").not.toEval();
|
||||
expect("function f([b[0]]) {}").not.toEval();
|
||||
|
||||
expect("function f({c:a.b}) {}").not.toEval();
|
||||
expect("function f({a:b[0]}) {}").not.toEval();
|
||||
|
||||
expect("([a.b]) => 1").not.toEval();
|
||||
expect("([b[0]]) => 2").not.toEval();
|
||||
|
||||
expect("({c:a.b}) => 3").not.toEval();
|
||||
expect("({a:b[0]}) => 4").not.toEval();
|
||||
});
|
||||
});
|
||||
|
||||
describe("evaluating", () => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue