summaryrefslogtreecommitdiffhomepage
path: root/lexer.c
diff options
context:
space:
mode:
authorJo-Philipp Wich <jo@mein.io>2023-11-06 15:59:17 +0100
committerJo-Philipp Wich <jo@mein.io>2023-11-06 16:33:51 +0100
commit1468cc406bf9b46ae7942791eaa78f74a185062e (patch)
treedfdd03718e33e6a5b1a358b15191d0009f1d7ac3 /lexer.c
parentcfb24ea4f12131dcefe4f1ede2f51d3d16b88dec (diff)
syntax: don't treat `as` and `from` as reserved keywords
ECMAScript allows using `as` and `from` as identifiers so follow suit and don't treat them specially while parsing. Extend the compiler logic instead to check for TK_LABEL tokens with the expected value to properly parse import and export statements. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'lexer.c')
-rw-r--r--lexer.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/lexer.c b/lexer.c
index 28188c3..53f00f5 100644
--- a/lexer.c
+++ b/lexer.c
@@ -68,13 +68,11 @@ static const struct keyword reserved_words[] = {
{ TK_THIS, "this", 4 },
{ TK_NULL, "null", 4 },
{ TK_CASE, "case", 4 },
- { TK_FROM, "from", 4 },
{ TK_TRY, "try", 3 },
{ TK_FOR, "for", 3 },
{ TK_LOCAL, "let", 3 },
{ TK_IF, "if", 2 },
{ TK_IN, "in", 2 },
- { TK_AS, "as", 2 },
};