diff options
author | Jo-Philipp Wich <jo@mein.io> | 2024-09-23 16:56:41 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-23 16:56:41 +0200 |
commit | fa22732f3463a443d5b42d933e245680fc8ed20f (patch) | |
tree | b7dc93da7d07f97efa2479487061f3c6a9665ef1 | |
parent | 6e88c62203fae7cc7d08d9f84058c515192aca0d (diff) | |
parent | 94d1211ce0b5ed962de990a4427b9dea0c25522f (diff) |
Merge pull request #225 from jow-/compiler-fix-keyword-property-labels-after-spread
compiler: properly treat property names after spread expressions
-rw-r--r-- | compiler.c | 1 | ||||
-rw-r--r-- | tests/custom/99_bugs/47_compiler_no_prop_kw_after_spread | 17 |
2 files changed, 18 insertions, 0 deletions
@@ -2060,6 +2060,7 @@ uc_compiler_compile_object(uc_compiler_t *compiler) /* emit merge operation */ uc_compiler_emit_insn(compiler, 0, I_MOBJ); + compiler->parser->lex.no_keyword = true; continue; } diff --git a/tests/custom/99_bugs/47_compiler_no_prop_kw_after_spread b/tests/custom/99_bugs/47_compiler_no_prop_kw_after_spread new file mode 100644 index 0000000..26f1bff --- /dev/null +++ b/tests/custom/99_bugs/47_compiler_no_prop_kw_after_spread @@ -0,0 +1,17 @@ +Ensure that unquoted property names following spread expressions in object +declaration literals are not treated as keywords. + +-- Testcase -- +{% +printf("%.J\n", { + ...{}, + for: true +}); +%} +-- End -- + +-- Expect stdout -- +{ + "for": true +} +-- End -- |