]> git.kaiwu.me - njs.git/commitdiff
Allowed uppercased O in octal literal values.
authorValentin Bartenev <vbart@nginx.com>
Sun, 1 Jul 2018 06:59:45 +0000 (09:59 +0300)
committerValentin Bartenev <vbart@nginx.com>
Sun, 1 Jul 2018 06:59:45 +0000 (09:59 +0300)
njs/njs_lexer.c
njs/test/njs_unit_test.c

index 73a009c237a51b11f383c1c24fd425702b0161dc..2b17c4dd967cac9f2d0df21df321e1adb8c15133 100644 (file)
@@ -550,7 +550,7 @@ njs_lexer_number(njs_lexer_t *lexer)
 
         /* Octal literal values. */
 
-        if (*p == 'o') {
+        if (*p == 'o' || *p == 'O') {
             p++;
 
             if (p == lexer->end) {
index 41f82c172d0550a3a962e7a7123f20a1aaf11e0c..0a898ae3f6fad2a97bf8221718d2395197faa48c 100644 (file)
@@ -118,10 +118,13 @@ static njs_unit_test_t  njs_test[] =
     { nxt_string("0o0"),
       nxt_string("0") },
 
+    { nxt_string("0O10"),
+      nxt_string("8") },
+
     { nxt_string("0o011"),
       nxt_string("9") },
 
-    { nxt_string("-0o777"),
+    { nxt_string("-0O777"),
       nxt_string("-511") },
 
     /* Legacy Octal Numbers are deprecated. */
@@ -141,7 +144,7 @@ static njs_unit_test_t  njs_test[] =
     { nxt_string("0o"),
       nxt_string("SyntaxError: Unexpected token \"\" in 1") },
 
-    { nxt_string("0o778"),
+    { nxt_string("0O778"),
       nxt_string("SyntaxError: Unexpected token \"\" in 1") },
 
     /* Hex Numbers. */