From e11abfb3a224acd8f7ddb699da5bed883ede9242 Mon Sep 17 00:00:00 2001 From: tofpie <75836434+tofpie@users.noreply.github.com> Date: Fri, 1 Jan 2021 16:36:14 +0100 Subject: [PATCH] Implement early errors for non-assignable nodes in assignment (#1019) Co-authored-by: tofpie --- boa/src/syntax/parser/expression/assignment/mod.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/boa/src/syntax/parser/expression/assignment/mod.rs b/boa/src/syntax/parser/expression/assignment/mod.rs index 3eebbfa3ce..9516b8af30 100644 --- a/boa/src/syntax/parser/expression/assignment/mod.rs +++ b/boa/src/syntax/parser/expression/assignment/mod.rs @@ -217,5 +217,6 @@ where /// [spec]: https://tc39.es/ecma262/#sec-assignment-operators-static-semantics-early-errors #[inline] pub(crate) fn is_assignable(node: &Node) -> bool { - !matches!(node, Node::Const(_) | Node::ArrayDecl(_)) + matches!(node, Node::GetConstField(_) | Node::GetField(_) | Node::Assign(_) + | Node::Call(_) | Node::Identifier(_) | Node::Object(_)) }