]> granicus.if.org Git - php/commitdiff
regenerated scanner
authorAnatol Belski <ab@php.net>
Mon, 9 Feb 2015 10:22:50 +0000 (11:22 +0100)
committerAnatol Belski <ab@php.net>
Mon, 9 Feb 2015 10:22:50 +0000 (11:22 +0100)
ext/json/json_scanner.c
ext/json/php_json_scanner_defs.h

index 6cd4d12fd65b9c3b5e77a24371bec83969ceb58d..2cfd8b84bea0b4de42c0c312a1560c045fba1d88 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.6 */
+/* Generated by re2c 0.13.5 */
 /*
   +----------------------------------------------------------------------+
   | PHP Version 5                                                        |
@@ -147,55 +147,56 @@ yyc_JS:
                                  0,   0,   0,   0,   0,   0,   0,   0, 
                                  0,   0,   0,   0,   0,   0,   0,   0, 
                        };
+
                        yych = *YYCURSOR;
                        if (yych <= '9') {
                                if (yych <= ' ') {
                                        if (yych <= '\n') {
-                                               if (yych <= 0x00) goto yy3;
-                                               if (yych <= 0x08) goto yy5;
-                                               if (yych <= '\t') goto yy7;
-                                               goto yy9;
+                                               if (yych <= 0x00) goto yy2;
+                                               if (yych <= 0x08) goto yy4;
+                                               if (yych <= '\t') goto yy6;
+                                               goto yy8;
                                        } else {
-                                               if (yych == '\r') goto yy10;
-                                               if (yych <= 0x1F) goto yy5;
-                                               goto yy7;
+                                               if (yych == '\r') goto yy9;
+                                               if (yych <= 0x1F) goto yy4;
+                                               goto yy6;
                                        }
                                } else {
                                        if (yych <= ',') {
-                                               if (yych == '"') goto yy11;
-                                               if (yych <= '+') goto yy5;
-                                               goto yy13;
+                                               if (yych == '"') goto yy10;
+                                               if (yych <= '+') goto yy4;
+                                               goto yy12;
                                        } else {
-                                               if (yych <= '-') goto yy15;
-                                               if (yych <= '/') goto yy5;
-                                               if (yych <= '0') goto yy16;
-                                               goto yy18;
+                                               if (yych <= '-') goto yy14;
+                                               if (yych <= '/') goto yy4;
+                                               if (yych <= '0') goto yy15;
+                                               goto yy17;
                                        }
                                }
                        } else {
                                if (yych <= 'm') {
                                        if (yych <= '\\') {
-                                               if (yych <= ':') goto yy19;
-                                               if (yych == '[') goto yy21;
-                                               goto yy5;
+                                               if (yych <= ':') goto yy18;
+                                               if (yych == '[') goto yy20;
+                                               goto yy4;
                                        } else {
-                                               if (yych <= ']') goto yy23;
-                                               if (yych == 'f') goto yy25;
-                                               goto yy5;
+                                               if (yych <= ']') goto yy22;
+                                               if (yych == 'f') goto yy24;
+                                               goto yy4;
                                        }
                                } else {
                                        if (yych <= 'z') {
-                                               if (yych <= 'n') goto yy26;
-                                               if (yych == 't') goto yy27;
-                                               goto yy5;
+                                               if (yych <= 'n') goto yy25;
+                                               if (yych == 't') goto yy26;
+                                               goto yy4;
                                        } else {
-                                               if (yych <= '{') goto yy28;
-                                               if (yych == '}') goto yy30;
-                                               goto yy5;
+                                               if (yych <= '{') goto yy27;
+                                               if (yych == '}') goto yy29;
+                                               goto yy4;
                                        }
                                }
                        }
-yy3:
+yy2:
                        ++YYCURSOR;
                        {
                if (s->limit < s->cursor) {
@@ -205,27 +206,27 @@ yy3:
                        return PHP_JSON_T_ERROR;
                }
        }
-yy5:
+yy4:
                        ++YYCURSOR;
-yy6:
+yy5:
                        {
                s->errcode = PHP_JSON_ERROR_SYNTAX;
                return PHP_JSON_T_ERROR;
        }
-yy7:
+yy6:
                        ++YYCURSOR;
                        yych = *YYCURSOR;
-                       goto yy58;
-yy8:
+                       goto yy57;
+yy7:
                        { goto std; }
+yy8:
+                       yych = *++YYCURSOR;
+                       goto yy7;
 yy9:
                        yych = *++YYCURSOR;
-                       goto yy8;
+                       if (yych == '\n') goto yy58;
+                       goto yy57;
 yy10:
-                       yych = *++YYCURSOR;
-                       if (yych == '\n') goto yy59;
-                       goto yy58;
-yy11:
                        ++YYCURSOR;
                        {
                s->str_start = s->cursor;
@@ -233,25 +234,25 @@ yy11:
                PHP_JSON_CONDITION_SET(STR_P1);
                PHP_JSON_CONDITION_GOTO(STR_P1);
        }
-yy13:
+yy12:
                        ++YYCURSOR;
                        { return ','; }
-yy15:
+yy14:
                        yych = *++YYCURSOR;
-                       if (yych <= '/') goto yy6;
-                       if (yych <= '0') goto yy56;
-                       if (yych <= '9') goto yy46;
-                       goto yy6;
-yy16:
+                       if (yych <= '/') goto yy5;
+                       if (yych <= '0') goto yy55;
+                       if (yych <= '9') goto yy45;
+                       goto yy5;
+yy15:
                        yyaccept = 0;
                        yych = *(YYMARKER = ++YYCURSOR);
                        if (yych <= 'D') {
-                               if (yych == '.') goto yy48;
+                               if (yych == '.') goto yy47;
                        } else {
-                               if (yych <= 'E') goto yy49;
-                               if (yych == 'e') goto yy49;
+                               if (yych <= 'E') goto yy48;
+                               if (yych == 'e') goto yy48;
                        }
-yy17:
+yy16:
                        {
                zend_bool bigint = 0, negative = s->token[0] == '-';
                size_t digits = (size_t) (s->cursor - s->token - negative);
@@ -276,203 +277,203 @@ yy17:
                        return PHP_JSON_T_DOUBLE;
                }
        }
-yy18:
+yy17:
                        yyaccept = 0;
                        yych = *(YYMARKER = ++YYCURSOR);
-                       goto yy47;
-yy19:
+                       goto yy46;
+yy18:
                        ++YYCURSOR;
                        { return ':'; }
-yy21:
+yy20:
                        ++YYCURSOR;
                        { return '['; }
-yy23:
+yy22:
                        ++YYCURSOR;
                        { return ']'; }
+yy24:
+                       yyaccept = 1;
+                       yych = *(YYMARKER = ++YYCURSOR);
+                       if (yych == 'a') goto yy40;
+                       goto yy5;
 yy25:
                        yyaccept = 1;
                        yych = *(YYMARKER = ++YYCURSOR);
-                       if (yych == 'a') goto yy41;
-                       goto yy6;
+                       if (yych == 'u') goto yy36;
+                       goto yy5;
 yy26:
                        yyaccept = 1;
                        yych = *(YYMARKER = ++YYCURSOR);
-                       if (yych == 'u') goto yy37;
-                       goto yy6;
+                       if (yych == 'r') goto yy31;
+                       goto yy5;
 yy27:
-                       yyaccept = 1;
-                       yych = *(YYMARKER = ++YYCURSOR);
-                       if (yych == 'r') goto yy32;
-                       goto yy6;
-yy28:
                        ++YYCURSOR;
                        { return '{'; }
-yy30:
+yy29:
                        ++YYCURSOR;
                        { return '}'; }
-yy32:
+yy31:
                        yych = *++YYCURSOR;
-                       if (yych == 'u') goto yy34;
-yy33:
+                       if (yych == 'u') goto yy33;
+yy32:
                        YYCURSOR = YYMARKER;
                        if (yyaccept <= 1) {
-                               if (yyaccept == 0) {
-                                       goto yy17;
+                               if (yyaccept <= 0) {
+                                       goto yy16;
                                } else {
-                                       goto yy6;
+                                       goto yy5;
                                }
                        } else {
-                               goto yy53;
+                               goto yy52;
                        }
-yy34:
+yy33:
                        yych = *++YYCURSOR;
-                       if (yych != 'e') goto yy33;
+                       if (yych != 'e') goto yy32;
                        ++YYCURSOR;
                        {
                ZVAL_TRUE(&s->value);
                return PHP_JSON_T_TRUE;
        }
-yy37:
+yy36:
                        yych = *++YYCURSOR;
-                       if (yych != 'l') goto yy33;
+                       if (yych != 'l') goto yy32;
                        yych = *++YYCURSOR;
-                       if (yych != 'l') goto yy33;
+                       if (yych != 'l') goto yy32;
                        ++YYCURSOR;
                        {
                ZVAL_NULL(&s->value);
                return PHP_JSON_T_NUL;
        }
-yy41:
+yy40:
                        yych = *++YYCURSOR;
-                       if (yych != 'l') goto yy33;
+                       if (yych != 'l') goto yy32;
                        yych = *++YYCURSOR;
-                       if (yych != 's') goto yy33;
+                       if (yych != 's') goto yy32;
                        yych = *++YYCURSOR;
-                       if (yych != 'e') goto yy33;
+                       if (yych != 'e') goto yy32;
                        ++YYCURSOR;
                        {
                ZVAL_FALSE(&s->value);
                return PHP_JSON_T_FALSE;
        }
-yy46:
+yy45:
                        yyaccept = 0;
                        YYMARKER = ++YYCURSOR;
                        yych = *YYCURSOR;
-yy47:
+yy46:
                        if (yybm[0+yych] & 64) {
-                               goto yy46;
+                               goto yy45;
                        }
                        if (yych <= 'D') {
-                               if (yych != '.') goto yy17;
+                               if (yych != '.') goto yy16;
                        } else {
-                               if (yych <= 'E') goto yy49;
-                               if (yych == 'e') goto yy49;
-                               goto yy17;
+                               if (yych <= 'E') goto yy48;
+                               if (yych == 'e') goto yy48;
+                               goto yy16;
                        }
-yy48:
+yy47:
                        yych = *++YYCURSOR;
-                       if (yych <= '/') goto yy33;
-                       if (yych <= '9') goto yy54;
-                       goto yy33;
-yy49:
+                       if (yych <= '/') goto yy32;
+                       if (yych <= '9') goto yy53;
+                       goto yy32;
+yy48:
                        yych = *++YYCURSOR;
                        if (yych <= ',') {
-                               if (yych != '+') goto yy33;
+                               if (yych != '+') goto yy32;
                        } else {
-                               if (yych <= '-') goto yy50;
-                               if (yych <= '/') goto yy33;
-                               if (yych <= '9') goto yy51;
-                               goto yy33;
+                               if (yych <= '-') goto yy49;
+                               if (yych <= '/') goto yy32;
+                               if (yych <= '9') goto yy50;
+                               goto yy32;
                        }
-yy50:
+yy49:
                        yych = *++YYCURSOR;
-                       if (yych <= '/') goto yy33;
-                       if (yych >= ':') goto yy33;
-yy51:
+                       if (yych <= '/') goto yy32;
+                       if (yych >= ':') goto yy32;
+yy50:
                        ++YYCURSOR;
                        yych = *YYCURSOR;
-                       if (yych <= '/') goto yy53;
-                       if (yych <= '9') goto yy51;
-yy53:
+                       if (yych <= '/') goto yy52;
+                       if (yych <= '9') goto yy50;
+yy52:
                        {
                ZVAL_DOUBLE(&s->value, zend_strtod((char *) s->token, NULL));
                return PHP_JSON_T_DOUBLE;
        }
-yy54:
+yy53:
                        yyaccept = 2;
                        YYMARKER = ++YYCURSOR;
                        yych = *YYCURSOR;
                        if (yych <= 'D') {
-                               if (yych <= '/') goto yy53;
-                               if (yych <= '9') goto yy54;
-                               goto yy53;
+                               if (yych <= '/') goto yy52;
+                               if (yych <= '9') goto yy53;
+                               goto yy52;
                        } else {
-                               if (yych <= 'E') goto yy49;
-                               if (yych == 'e') goto yy49;
-                               goto yy53;
+                               if (yych <= 'E') goto yy48;
+                               if (yych == 'e') goto yy48;
+                               goto yy52;
                        }
-yy56:
+yy55:
                        yyaccept = 0;
                        yych = *(YYMARKER = ++YYCURSOR);
                        if (yych <= 'D') {
-                               if (yych == '.') goto yy48;
-                               goto yy17;
+                               if (yych == '.') goto yy47;
+                               goto yy16;
                        } else {
-                               if (yych <= 'E') goto yy49;
-                               if (yych == 'e') goto yy49;
-                               goto yy17;
+                               if (yych <= 'E') goto yy48;
+                               if (yych == 'e') goto yy48;
+                               goto yy16;
                        }
-yy57:
+yy56:
                        ++YYCURSOR;
                        yych = *YYCURSOR;
-yy58:
+yy57:
                        if (yybm[0+yych] & 128) {
-                               goto yy57;
+                               goto yy56;
                        }
-                       goto yy8;
-yy59:
+                       goto yy7;
+yy58:
                        ++YYCURSOR;
                        yych = *YYCURSOR;
-                       goto yy8;
+                       goto yy7;
                }
 /* *********************************** */
 yyc_STR_P1:
                yych = *YYCURSOR;
                if (yych <= 0xDF) {
                        if (yych <= '[') {
-                               if (yych <= 0x1F) goto yy62;
-                               if (yych == '"') goto yy66;
-                               goto yy64;
+                               if (yych <= 0x1F) goto yy61;
+                               if (yych == '"') goto yy65;
+                               goto yy63;
                        } else {
-                               if (yych <= '\\') goto yy68;
-                               if (yych <= 0x7F) goto yy64;
-                               if (yych <= 0xC1) goto yy70;
-                               goto yy72;
+                               if (yych <= '\\') goto yy67;
+                               if (yych <= 0x7F) goto yy63;
+                               if (yych <= 0xC1) goto yy69;
+                               goto yy71;
                        }
                } else {
                        if (yych <= 0xEF) {
-                               if (yych <= 0xE0) goto yy73;
-                               if (yych <= 0xEC) goto yy74;
-                               if (yych <= 0xED) goto yy75;
-                               goto yy76;
+                               if (yych <= 0xE0) goto yy72;
+                               if (yych <= 0xEC) goto yy73;
+                               if (yych <= 0xED) goto yy74;
+                               goto yy75;
                        } else {
-                               if (yych <= 0xF0) goto yy77;
-                               if (yych <= 0xF3) goto yy78;
-                               if (yych <= 0xF4) goto yy79;
-                               goto yy70;
+                               if (yych <= 0xF0) goto yy76;
+                               if (yych <= 0xF3) goto yy77;
+                               if (yych <= 0xF4) goto yy78;
+                               goto yy69;
                        }
                }
-yy62:
+yy61:
                ++YYCURSOR;
                {
                s->errcode = PHP_JSON_ERROR_CTRL_CHAR;
                return PHP_JSON_T_ERROR;
        }
-yy64:
+yy63:
                ++YYCURSOR;
-yy65:
+yy64:
                { PHP_JSON_CONDITION_GOTO(STR_P1); }
-yy66:
+yy65:
                ++YYCURSOR;
                {
                zend_string *str;
@@ -496,361 +497,361 @@ yy66:
                        return PHP_JSON_T_STRING;
                }
        }
-yy68:
+yy67:
                yyaccept = 0;
                yych = *(YYMARKER = ++YYCURSOR);
                if (yych <= 'e') {
                        if (yych <= '/') {
-                               if (yych == '"') goto yy92;
-                               if (yych >= '/') goto yy92;
+                               if (yych == '"') goto yy91;
+                               if (yych >= '/') goto yy91;
                        } else {
                                if (yych <= '\\') {
-                                       if (yych >= '\\') goto yy92;
+                                       if (yych >= '\\') goto yy91;
                                } else {
-                                       if (yych == 'b') goto yy92;
+                                       if (yych == 'b') goto yy91;
                                }
                        }
                } else {
                        if (yych <= 'q') {
-                               if (yych <= 'f') goto yy92;
-                               if (yych == 'n') goto yy92;
+                               if (yych <= 'f') goto yy91;
+                               if (yych == 'n') goto yy91;
                        } else {
                                if (yych <= 's') {
-                                       if (yych <= 'r') goto yy92;
+                                       if (yych <= 'r') goto yy91;
                                } else {
-                                       if (yych <= 't') goto yy92;
-                                       if (yych <= 'u') goto yy94;
+                                       if (yych <= 't') goto yy91;
+                                       if (yych <= 'u') goto yy93;
                                }
                        }
                }
-yy69:
+yy68:
                {
                s->errcode = PHP_JSON_ERROR_SYNTAX;
                return PHP_JSON_T_ERROR;
        }
-yy70:
+yy69:
                ++YYCURSOR;
-yy71:
+yy70:
                {
                s->errcode = PHP_JSON_ERROR_UTF8;
                return PHP_JSON_T_ERROR;
        }
-yy72:
+yy71:
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy71;
-               if (yych <= 0xBF) goto yy83;
-               goto yy71;
+               if (yych <= 0x7F) goto yy70;
+               if (yych <= 0xBF) goto yy82;
+               goto yy70;
+yy72:
+               yyaccept = 1;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= 0x9F) goto yy70;
+               if (yych <= 0xBF) goto yy90;
+               goto yy70;
 yy73:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= 0x9F) goto yy71;
-               if (yych <= 0xBF) goto yy91;
-               goto yy71;
+               if (yych <= 0x7F) goto yy70;
+               if (yych <= 0xBF) goto yy89;
+               goto yy70;
 yy74:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= 0x7F) goto yy71;
-               if (yych <= 0xBF) goto yy90;
-               goto yy71;
+               if (yych <= 0x7F) goto yy70;
+               if (yych <= 0x9F) goto yy88;
+               goto yy70;
 yy75:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= 0x7F) goto yy71;
-               if (yych <= 0x9F) goto yy89;
-               goto yy71;
+               if (yych <= 0x7F) goto yy70;
+               if (yych <= 0xBF) goto yy87;
+               goto yy70;
 yy76:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= 0x7F) goto yy71;
-               if (yych <= 0xBF) goto yy88;
-               goto yy71;
+               if (yych <= 0x8F) goto yy70;
+               if (yych <= 0xBF) goto yy85;
+               goto yy70;
 yy77:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= 0x8F) goto yy71;
-               if (yych <= 0xBF) goto yy86;
-               goto yy71;
+               if (yych <= 0x7F) goto yy70;
+               if (yych <= 0xBF) goto yy83;
+               goto yy70;
 yy78:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= 0x7F) goto yy71;
-               if (yych <= 0xBF) goto yy84;
-               goto yy71;
-yy79:
-               yyaccept = 1;
-               yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= 0x7F) goto yy71;
-               if (yych >= 0x90) goto yy71;
+               if (yych <= 0x7F) goto yy70;
+               if (yych >= 0x90) goto yy70;
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych <= 0xBF) goto yy82;
-yy81:
+               if (yych <= 0x7F) goto yy80;
+               if (yych <= 0xBF) goto yy81;
+yy80:
                YYCURSOR = YYMARKER;
                if (yyaccept <= 1) {
-                       if (yyaccept == 0) {
-                               goto yy69;
+                       if (yyaccept <= 0) {
+                               goto yy68;
                        } else {
-                               goto yy71;
+                               goto yy70;
                        }
                } else {
-                       goto yy101;
+                       goto yy100;
                }
+yy81:
+               yych = *++YYCURSOR;
+               if (yych <= 0x7F) goto yy80;
+               if (yych >= 0xC0) goto yy80;
 yy82:
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych >= 0xC0) goto yy81;
+               goto yy64;
 yy83:
                yych = *++YYCURSOR;
-               goto yy65;
-yy84:
+               if (yych <= 0x7F) goto yy80;
+               if (yych >= 0xC0) goto yy80;
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych >= 0xC0) goto yy81;
+               if (yych <= 0x7F) goto yy80;
+               if (yych <= 0xBF) goto yy82;
+               goto yy80;
+yy85:
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych <= 0xBF) goto yy83;
-               goto yy81;
-yy86:
+               if (yych <= 0x7F) goto yy80;
+               if (yych >= 0xC0) goto yy80;
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych >= 0xC0) goto yy81;
+               if (yych <= 0x7F) goto yy80;
+               if (yych <= 0xBF) goto yy82;
+               goto yy80;
+yy87:
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych <= 0xBF) goto yy83;
-               goto yy81;
+               if (yych <= 0x7F) goto yy80;
+               if (yych <= 0xBF) goto yy82;
+               goto yy80;
 yy88:
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych <= 0xBF) goto yy83;
-               goto yy81;
+               if (yych <= 0x7F) goto yy80;
+               if (yych <= 0xBF) goto yy82;
+               goto yy80;
 yy89:
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych <= 0xBF) goto yy83;
-               goto yy81;
+               if (yych <= 0x7F) goto yy80;
+               if (yych <= 0xBF) goto yy82;
+               goto yy80;
 yy90:
                yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych <= 0xBF) goto yy83;
-               goto yy81;
+               if (yych <= 0x7F) goto yy80;
+               if (yych <= 0xBF) goto yy82;
+               goto yy80;
 yy91:
-               yych = *++YYCURSOR;
-               if (yych <= 0x7F) goto yy81;
-               if (yych <= 0xBF) goto yy83;
-               goto yy81;
-yy92:
                ++YYCURSOR;
                {
                s->str_esc++;
                PHP_JSON_CONDITION_GOTO(STR_P1);
        }
-yy94:
+yy93:
                yych = *++YYCURSOR;
                if (yych <= 'D') {
                        if (yych <= '9') {
-                               if (yych <= '/') goto yy81;
-                               if (yych >= '1') goto yy97;
+                               if (yych <= '/') goto yy80;
+                               if (yych >= '1') goto yy96;
                        } else {
-                               if (yych <= '@') goto yy81;
-                               if (yych <= 'C') goto yy97;
-                               goto yy96;
+                               if (yych <= '@') goto yy80;
+                               if (yych <= 'C') goto yy96;
+                               goto yy95;
                        }
                } else {
                        if (yych <= 'c') {
-                               if (yych <= 'F') goto yy97;
-                               if (yych <= '`') goto yy81;
-                               goto yy97;
+                               if (yych <= 'F') goto yy96;
+                               if (yych <= '`') goto yy80;
+                               goto yy96;
                        } else {
-                               if (yych <= 'd') goto yy96;
-                               if (yych <= 'f') goto yy97;
-                               goto yy81;
+                               if (yych <= 'd') goto yy95;
+                               if (yych <= 'f') goto yy96;
+                               goto yy80;
                        }
                }
                yych = *++YYCURSOR;
                if (yych <= '9') {
-                       if (yych <= '/') goto yy81;
-                       if (yych <= '0') goto yy112;
-                       if (yych <= '7') goto yy113;
-                       goto yy98;
+                       if (yych <= '/') goto yy80;
+                       if (yych <= '0') goto yy111;
+                       if (yych <= '7') goto yy112;
+                       goto yy97;
                } else {
                        if (yych <= 'F') {
-                               if (yych <= '@') goto yy81;
-                               goto yy98;
+                               if (yych <= '@') goto yy80;
+                               goto yy97;
                        } else {
-                               if (yych <= '`') goto yy81;
-                               if (yych <= 'f') goto yy98;
-                               goto yy81;
+                               if (yych <= '`') goto yy80;
+                               if (yych <= 'f') goto yy97;
+                               goto yy80;
                        }
                }
-yy96:
+yy95:
                yych = *++YYCURSOR;
                if (yych <= 'B') {
                        if (yych <= '7') {
-                               if (yych <= '/') goto yy81;
-                               goto yy98;
+                               if (yych <= '/') goto yy80;
+                               goto yy97;
                        } else {
-                               if (yych <= '9') goto yy102;
-                               if (yych <= '@') goto yy81;
-                               goto yy102;
+                               if (yych <= '9') goto yy101;
+                               if (yych <= '@') goto yy80;
+                               goto yy101;
                        }
                } else {
                        if (yych <= '`') {
-                               if (yych <= 'F') goto yy98;
-                               goto yy81;
+                               if (yych <= 'F') goto yy97;
+                               goto yy80;
                        } else {
-                               if (yych <= 'b') goto yy102;
-                               if (yych <= 'f') goto yy98;
-                               goto yy81;
+                               if (yych <= 'b') goto yy101;
+                               if (yych <= 'f') goto yy97;
+                               goto yy80;
                        }
                }
+yy96:
+               yych = *++YYCURSOR;
+               if (yych <= '@') {
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
+               } else {
+                       if (yych <= 'F') goto yy97;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
+               }
 yy97:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
                        if (yych <= 'F') goto yy98;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
 yy98:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
                        if (yych <= 'F') goto yy99;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
 yy99:
-               yych = *++YYCURSOR;
-               if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
-               } else {
-                       if (yych <= 'F') goto yy100;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
-               }
-yy100:
                ++YYCURSOR;
-yy101:
+yy100:
                {
                s->str_esc += 3;
                PHP_JSON_CONDITION_GOTO(STR_P1);
        }
-yy102:
+yy101:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
-                       if (yych <= 'F') goto yy103;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= 'F') goto yy102;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
-yy103:
+yy102:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
-                       if (yych <= 'F') goto yy104;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= 'F') goto yy103;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
-yy104:
+yy103:
                yyaccept = 2;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych != '\\') goto yy101;
+               if (yych != '\\') goto yy100;
                yych = *++YYCURSOR;
-               if (yych != 'u') goto yy81;
+               if (yych != 'u') goto yy80;
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy107;
-               if (yych != 'd') goto yy81;
-yy107:
+               if (yych == 'D') goto yy106;
+               if (yych != 'd') goto yy80;
+yy106:
                yych = *++YYCURSOR;
-               if (yych <= 'B') goto yy81;
-               if (yych <= 'F') goto yy108;
-               if (yych <= 'b') goto yy81;
-               if (yych >= 'g') goto yy81;
-yy108:
+               if (yych <= 'B') goto yy80;
+               if (yych <= 'F') goto yy107;
+               if (yych <= 'b') goto yy80;
+               if (yych >= 'g') goto yy80;
+yy107:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
-                       if (yych <= 'F') goto yy109;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= 'F') goto yy108;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
-yy109:
+yy108:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
-                       if (yych <= 'F') goto yy110;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= 'F') goto yy109;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
-yy110:
+yy109:
                ++YYCURSOR;
                {
                s->str_esc += 8;
                PHP_JSON_CONDITION_GOTO(STR_P1);
        }
-yy112:
+yy111:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych <= '7') goto yy117;
-                       if (yych <= '9') goto yy114;
-                       goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych <= '7') goto yy116;
+                       if (yych <= '9') goto yy113;
+                       goto yy80;
                } else {
-                       if (yych <= 'F') goto yy114;
-                       if (yych <= '`') goto yy81;
-                       if (yych <= 'f') goto yy114;
-                       goto yy81;
+                       if (yych <= 'F') goto yy113;
+                       if (yych <= '`') goto yy80;
+                       if (yych <= 'f') goto yy113;
+                       goto yy80;
                }
-yy113:
+yy112:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
-                       if (yych <= 'F') goto yy114;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= 'F') goto yy113;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
-yy114:
+yy113:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
-                       if (yych <= 'F') goto yy115;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= 'F') goto yy114;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
-yy115:
+yy114:
                ++YYCURSOR;
                {
                s->str_esc += 4;
                PHP_JSON_CONDITION_GOTO(STR_P1);
        }
-yy117:
+yy116:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy81;
-                       if (yych >= ':') goto yy81;
+                       if (yych <= '/') goto yy80;
+                       if (yych >= ':') goto yy80;
                } else {
-                       if (yych <= 'F') goto yy118;
-                       if (yych <= '`') goto yy81;
-                       if (yych >= 'g') goto yy81;
+                       if (yych <= 'F') goto yy117;
+                       if (yych <= '`') goto yy80;
+                       if (yych >= 'g') goto yy80;
                }
-yy118:
+yy117:
                ++YYCURSOR;
                {
                s->str_esc += 5;
@@ -859,22 +860,22 @@ yy118:
 /* *********************************** */
 yyc_STR_P2:
                yych = *YYCURSOR;
-               if (yych == '"') goto yy124;
-               if (yych == '\\') goto yy126;
+               if (yych == '"') goto yy123;
+               if (yych == '\\') goto yy125;
                ++YYCURSOR;
                { PHP_JSON_CONDITION_GOTO(STR_P2); }
-yy124:
+yy123:
                ++YYCURSOR;
                YYSETCONDITION(yycJS);
                {
                PHP_JSON_SCANNER_COPY_ESC();
                return PHP_JSON_T_STRING;
        }
-yy126:
+yy125:
                yyaccept = 0;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych == 'u') goto yy128;
-yy127:
+               if (yych == 'u') goto yy127;
+yy126:
                {
                char esc;
                PHP_JSON_SCANNER_COPY_ESC();
@@ -908,105 +909,105 @@ yy127:
                s->str_start = s->cursor;
                PHP_JSON_CONDITION_GOTO(STR_P2);
        }
-yy128:
+yy127:
                yych = *++YYCURSOR;
                if (yych <= 'D') {
                        if (yych <= '9') {
-                               if (yych <= '/') goto yy129;
-                               if (yych <= '0') goto yy130;
-                               goto yy132;
-                       } else {
-                               if (yych <= '@') goto yy129;
-                               if (yych <= 'C') goto yy132;
+                               if (yych <= '/') goto yy128;
+                               if (yych <= '0') goto yy129;
                                goto yy131;
+                       } else {
+                               if (yych <= '@') goto yy128;
+                               if (yych <= 'C') goto yy131;
+                               goto yy130;
                        }
                } else {
                        if (yych <= 'c') {
-                               if (yych <= 'F') goto yy132;
-                               if (yych >= 'a') goto yy132;
+                               if (yych <= 'F') goto yy131;
+                               if (yych >= 'a') goto yy131;
                        } else {
-                               if (yych <= 'd') goto yy131;
-                               if (yych <= 'f') goto yy132;
+                               if (yych <= 'd') goto yy130;
+                               if (yych <= 'f') goto yy131;
                        }
                }
-yy129:
+yy128:
                YYCURSOR = YYMARKER;
-               if (yyaccept == 0) {
-                       goto yy127;
+               if (yyaccept <= 0) {
+                       goto yy126;
                } else {
-                       goto yy136;
+                       goto yy135;
                }
-yy130:
+yy129:
                yych = *++YYCURSOR;
                if (yych <= '9') {
-                       if (yych <= '/') goto yy129;
-                       if (yych <= '0') goto yy147;
-                       if (yych <= '7') goto yy148;
-                       goto yy133;
+                       if (yych <= '/') goto yy128;
+                       if (yych <= '0') goto yy146;
+                       if (yych <= '7') goto yy147;
+                       goto yy132;
                } else {
                        if (yych <= 'F') {
-                               if (yych <= '@') goto yy129;
-                               goto yy133;
+                               if (yych <= '@') goto yy128;
+                               goto yy132;
                        } else {
-                               if (yych <= '`') goto yy129;
-                               if (yych <= 'f') goto yy133;
-                               goto yy129;
+                               if (yych <= '`') goto yy128;
+                               if (yych <= 'f') goto yy132;
+                               goto yy128;
                        }
                }
-yy131:
+yy130:
                yych = *++YYCURSOR;
                if (yych <= 'B') {
                        if (yych <= '7') {
-                               if (yych <= '/') goto yy129;
-                               goto yy133;
+                               if (yych <= '/') goto yy128;
+                               goto yy132;
                        } else {
-                               if (yych <= '9') goto yy137;
-                               if (yych <= '@') goto yy129;
-                               goto yy137;
+                               if (yych <= '9') goto yy136;
+                               if (yych <= '@') goto yy128;
+                               goto yy136;
                        }
                } else {
                        if (yych <= '`') {
-                               if (yych <= 'F') goto yy133;
-                               goto yy129;
+                               if (yych <= 'F') goto yy132;
+                               goto yy128;
                        } else {
-                               if (yych <= 'b') goto yy137;
-                               if (yych <= 'f') goto yy133;
-                               goto yy129;
+                               if (yych <= 'b') goto yy136;
+                               if (yych <= 'f') goto yy132;
+                               goto yy128;
                        }
                }
+yy131:
+               yych = *++YYCURSOR;
+               if (yych <= '@') {
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
+               } else {
+                       if (yych <= 'F') goto yy132;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
+               }
 yy132:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
                        if (yych <= 'F') goto yy133;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
 yy133:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
                        if (yych <= 'F') goto yy134;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
 yy134:
-               yych = *++YYCURSOR;
-               if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
-               } else {
-                       if (yych <= 'F') goto yy135;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
-               }
-yy135:
                ++YYCURSOR;
-yy136:
+yy135:
                {
                int utf16 = php_json_ucs2_to_int(s, 4);
                PHP_JSON_SCANNER_COPY_UTF();
@@ -1016,62 +1017,62 @@ yy136:
                s->str_start = s->cursor;
                PHP_JSON_CONDITION_GOTO(STR_P2);
        }
-yy137:
+yy136:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
-                       if (yych <= 'F') goto yy138;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= 'F') goto yy137;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
-yy138:
+yy137:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
-                       if (yych <= 'F') goto yy139;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= 'F') goto yy138;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
-yy139:
+yy138:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
-               if (yych != '\\') goto yy136;
+               if (yych != '\\') goto yy135;
                yych = *++YYCURSOR;
-               if (yych != 'u') goto yy129;
+               if (yych != 'u') goto yy128;
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy142;
-               if (yych != 'd') goto yy129;
-yy142:
+               if (yych == 'D') goto yy141;
+               if (yych != 'd') goto yy128;
+yy141:
                yych = *++YYCURSOR;
-               if (yych <= 'B') goto yy129;
-               if (yych <= 'F') goto yy143;
-               if (yych <= 'b') goto yy129;
-               if (yych >= 'g') goto yy129;
-yy143:
+               if (yych <= 'B') goto yy128;
+               if (yych <= 'F') goto yy142;
+               if (yych <= 'b') goto yy128;
+               if (yych >= 'g') goto yy128;
+yy142:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
-                       if (yych <= 'F') goto yy144;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= 'F') goto yy143;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
-yy144:
+yy143:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
-                       if (yych <= 'F') goto yy145;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= 'F') goto yy144;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
-yy145:
+yy144:
                ++YYCURSOR;
                {
                int utf32, utf16_hi, utf16_lo;
@@ -1086,40 +1087,40 @@ yy145:
                s->str_start = s->cursor;
                PHP_JSON_CONDITION_GOTO(STR_P2);
        }
-yy147:
+yy146:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych <= '7') goto yy152;
-                       if (yych <= '9') goto yy149;
-                       goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych <= '7') goto yy151;
+                       if (yych <= '9') goto yy148;
+                       goto yy128;
                } else {
-                       if (yych <= 'F') goto yy149;
-                       if (yych <= '`') goto yy129;
-                       if (yych <= 'f') goto yy149;
-                       goto yy129;
+                       if (yych <= 'F') goto yy148;
+                       if (yych <= '`') goto yy128;
+                       if (yych <= 'f') goto yy148;
+                       goto yy128;
                }
-yy148:
+yy147:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
-                       if (yych <= 'F') goto yy149;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= 'F') goto yy148;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
-yy149:
+yy148:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
-                       if (yych <= 'F') goto yy150;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= 'F') goto yy149;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
-yy150:
+yy149:
                ++YYCURSOR;
                {
                int utf16 = php_json_ucs2_to_int(s, 3);
@@ -1129,17 +1130,17 @@ yy150:
                s->str_start = s->cursor;
                PHP_JSON_CONDITION_GOTO(STR_P2);
        }
-yy152:
+yy151:
                yych = *++YYCURSOR;
                if (yych <= '@') {
-                       if (yych <= '/') goto yy129;
-                       if (yych >= ':') goto yy129;
+                       if (yych <= '/') goto yy128;
+                       if (yych >= ':') goto yy128;
                } else {
-                       if (yych <= 'F') goto yy153;
-                       if (yych <= '`') goto yy129;
-                       if (yych >= 'g') goto yy129;
+                       if (yych <= 'F') goto yy152;
+                       if (yych <= '`') goto yy128;
+                       if (yych >= 'g') goto yy128;
                }
-yy153:
+yy152:
                ++YYCURSOR;
                {
                int utf16 = php_json_ucs2_to_int(s, 2);
index e1a5824dd3c6ce4dff7891dc363a67273303d1ff..b3867433a7c90e0b7e3bb6f677d878a6f0f6b865 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.6 */
+/* Generated by re2c 0.13.5 */
 
 enum YYCONDTYPE {
        yycJS,