From ed32c42eefbc4560408d53445c603767469c85bd Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 18 May 2021 11:12:01 +0200 Subject: compiler, lexer: add NO_LEGACY define to disable legacy syntax features Signed-off-by: Jo-Philipp Wich --- compiler.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'compiler.c') diff --git a/compiler.c b/compiler.c index cf9ca25..5a9b579 100644 --- a/compiler.c +++ b/compiler.c @@ -974,6 +974,7 @@ uc_compiler_compile_delete(uc_compiler *compiler, bool assignable) uc_chunk *chunk = uc_compiler_current_chunk(compiler); enum insn_type type; +#ifndef NO_LEGACY /* If the delete keyword is followed by an opening paren, it might be a * legacy delete(object, propname) call */ if (uc_compiler_parse_match(compiler, TK_LPAREN)) { @@ -1006,7 +1007,9 @@ uc_compiler_compile_delete(uc_compiler *compiler, bool assignable) /* Otherwise compile expression, ensure that it results in a property * access (I_LVAL) and overwrite it with delete operation. */ - else { + else +#endif /* NO_LEGACY */ + { uc_compiler_parse_precedence(compiler, P_UNARY); type = chunk->entries[compiler->last_insn]; -- cgit v1.2.3