]> git.kaiwu.me - njs.git/commitdiff
Parser: fixed broken for expressions parsing.
authorAlexander Borisov <alexander.borisov@nginx.com>
Thu, 25 Jun 2020 10:10:04 +0000 (13:10 +0300)
committerAlexander Borisov <alexander.borisov@nginx.com>
Thu, 25 Jun 2020 10:10:04 +0000 (13:10 +0300)
src/njs_parser.c
src/test/njs_unit_test.c

index 39f43db22cc3f4b123c479ae3fd2825ba3732492..d022fcf1321f94dd4b6d2bc47d476c101167e151 100644 (file)
@@ -5218,7 +5218,7 @@ njs_parser_iteration_statement_for_map(njs_parser_t *parser,
 
             njs_parser_next(parser, njs_parser_expression);
 
-            return njs_parser_after(parser, current, NULL, 0,
+            return njs_parser_after(parser, current, NULL, 1,
                                     njs_parser_for_expression);
         }
 
index b5812579e49c99afeb3d59dc70a2d4037eeb393b..283e6a6251f2484ac00f0ef8baae402798f6e14b 100644 (file)
@@ -17040,6 +17040,9 @@ static njs_unit_test_t  njs_test[] =
 
     { njs_str("`${{f(){-} - {}}`"),
       njs_str("SyntaxError: Unexpected token \"}\" in 1") },
+
+    { njs_str("for (;1-;) {}"),
+      njs_str("SyntaxError: Unexpected token \";\" in 1") },
 };