]> granicus.if.org Git - php/commitdiff
MFB: Fixed bug #44609 (Dollar in ini variables are not parsed correctly)
authorScott MacVicar <scottmac@php.net>
Mon, 7 Apr 2008 11:50:00 +0000 (11:50 +0000)
committerScott MacVicar <scottmac@php.net>
Mon, 7 Apr 2008 11:50:00 +0000 (11:50 +0000)
Zend/zend_ini_scanner.c
Zend/zend_ini_scanner.l

index d6e0e79e9664d4bef259076a0f4484962ef4a9b0..16890cef1f8cfc7a8c4a9693d2a47354f975a603 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.4.dev on Fri Apr  4 16:10:13 2008 */
+/* Generated by re2c 0.13.4.dev on Mon Apr  7 12:50:51 2008 */
 #line 1 "Zend/zend_ini_scanner.l"
 /*
    +----------------------------------------------------------------------+
@@ -943,22 +943,13 @@ yy63:
 yy64:
                YYDEBUG(64, *YYCURSOR);
                ++YYCURSOR;
-               if ((yych = *YYCURSOR) <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych >= 0x01) goto yy67;
-                       } else {
-                               if (yych <= '9') goto yy65;
-                               if (yych <= '@') goto yy67;
-                       }
+               if ((yych = *YYCURSOR) <= '\\') {
+                       if (yych <= 0x00) goto yy65;
+                       if (yych <= '[') goto yy67;
+                       goto yy72;
                } else {
-                       if (yych <= '`') {
-                               if (yych == '\\') goto yy72;
-                               goto yy67;
-                       } else {
-                               if (yych <= 'z') goto yy65;
-                               if (yych <= '{') goto yy78;
-                               goto yy67;
-                       }
+                       if (yych == '{') goto yy78;
+                       goto yy67;
                }
 yy65:
                YYDEBUG(65, *YYCURSOR);
@@ -967,7 +958,7 @@ yy65:
                {
        return 0;
 }
-#line 971 "Zend/zend_ini_scanner.c"
+#line 962 "Zend/zend_ini_scanner.c"
 yy66:
                YYDEBUG(66, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -994,21 +985,12 @@ yy70:
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               if (yych <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych >= 0x01) goto yy67;
-                       } else {
-                               if (yych <= '9') goto yy71;
-                               if (yych <= '@') goto yy67;
-                       }
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy71;
+                       if (yych <= '[') goto yy67;
+                       goto yy72;
                } else {
-                       if (yych <= '\\') {
-                               if (yych <= '[') goto yy67;
-                               goto yy72;
-                       } else {
-                               if (yych <= '`') goto yy67;
-                               if (yych >= '|') goto yy67;
-                       }
+                       if (yych != '{') goto yy67;
                }
 yy71:
                YYDEBUG(71, *YYCURSOR);
@@ -1066,7 +1048,7 @@ yy78:
        yy_push_state(ST_VARNAME TSRMLS_CC);
        return TC_DOLLAR_CURLY;
 }
-#line 1070 "Zend/zend_ini_scanner.c"
+#line 1052 "Zend/zend_ini_scanner.c"
 yy80:
                YYDEBUG(80, *YYCURSOR);
                ++YYCURSOR;
@@ -1169,7 +1151,7 @@ yy85:
                { /* Get rest as section/offset value */
        RETURN_TOKEN(TC_STRING, yytext, yyleng);
 }
-#line 1173 "Zend/zend_ini_scanner.c"
+#line 1155 "Zend/zend_ini_scanner.c"
 yy86:
                YYDEBUG(86, *YYCURSOR);
                yyaccept = 0;
@@ -1190,7 +1172,7 @@ yy88:
                {
        return 0;
 }
-#line 1194 "Zend/zend_ini_scanner.c"
+#line 1176 "Zend/zend_ini_scanner.c"
 yy89:
                YYDEBUG(89, *YYCURSOR);
                ++YYCURSOR;
@@ -1202,28 +1184,17 @@ yy90:
        yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
        return '"';
 }
-#line 1206 "Zend/zend_ini_scanner.c"
+#line 1188 "Zend/zend_ini_scanner.c"
 yy91:
                YYDEBUG(91, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych <= 0x00) goto yy88;
-                               goto yy102;
-                       } else {
-                               if (yych <= '9') goto yy88;
-                               if (yych <= '@') goto yy102;
-                               goto yy88;
-                       }
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy88;
+                       if (yych <= '[') goto yy102;
+                       goto yy107;
                } else {
-                       if (yych <= '`') {
-                               if (yych == '\\') goto yy107;
-                               goto yy102;
-                       } else {
-                               if (yych <= 'z') goto yy88;
-                               if (yych <= '{') goto yy127;
-                               goto yy102;
-                       }
+                       if (yych == '{') goto yy127;
+                       goto yy102;
                }
 yy92:
                YYDEBUG(92, *YYCURSOR);
@@ -1279,7 +1250,7 @@ yy96:
                { /* Get number option value as string */
        RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
 }
-#line 1283 "Zend/zend_ini_scanner.c"
+#line 1254 "Zend/zend_ini_scanner.c"
 yy97:
                YYDEBUG(97, *YYCURSOR);
                yyaccept = 3;
@@ -1309,7 +1280,7 @@ yy98:
                { /* Get constant option value */
        RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
 }
-#line 1313 "Zend/zend_ini_scanner.c"
+#line 1284 "Zend/zend_ini_scanner.c"
 yy99:
                YYDEBUG(99, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -1325,7 +1296,7 @@ yy101:
        BEGIN(INITIAL);
        return ']';
 }
-#line 1329 "Zend/zend_ini_scanner.c"
+#line 1300 "Zend/zend_ini_scanner.c"
 yy102:
                YYDEBUG(102, *YYCURSOR);
                yyaccept = 0;
@@ -1350,21 +1321,12 @@ yy105:
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               if (yych <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych >= 0x01) goto yy102;
-                       } else {
-                               if (yych <= '9') goto yy106;
-                               if (yych <= '@') goto yy102;
-                       }
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy106;
+                       if (yych <= '[') goto yy102;
+                       goto yy107;
                } else {
-                       if (yych <= '\\') {
-                               if (yych <= '[') goto yy102;
-                               goto yy107;
-                       } else {
-                               if (yych <= '`') goto yy102;
-                               if (yych >= '|') goto yy102;
-                       }
+                       if (yych != '{') goto yy102;
                }
 yy106:
                YYDEBUG(106, *YYCURSOR);
@@ -1633,7 +1595,7 @@ yy123:
        }
        RETURN_TOKEN(TC_RAW, yytext, yyleng);
 }
-#line 1637 "Zend/zend_ini_scanner.c"
+#line 1599 "Zend/zend_ini_scanner.c"
 yy127:
                YYDEBUG(127, *YYCURSOR);
                ++YYCURSOR;
@@ -1644,7 +1606,7 @@ yy127:
        yy_push_state(ST_VARNAME TSRMLS_CC);
        return TC_DOLLAR_CURLY;
 }
-#line 1648 "Zend/zend_ini_scanner.c"
+#line 1610 "Zend/zend_ini_scanner.c"
 yy129:
                YYDEBUG(129, *YYCURSOR);
                yyaccept = 0;
@@ -1761,7 +1723,7 @@ yy136:
        }
        RETURN_TOKEN(TC_RAW, yytext, yyleng);
 }
-#line 1765 "Zend/zend_ini_scanner.c"
+#line 1727 "Zend/zend_ini_scanner.c"
 yy137:
                YYDEBUG(137, *YYCURSOR);
                yyaccept = 0;
@@ -1789,7 +1751,7 @@ yy139:
        SCNG(lineno)++;
        return END_OF_LINE;
 }
-#line 1793 "Zend/zend_ini_scanner.c"
+#line 1755 "Zend/zend_ini_scanner.c"
 yy140:
                YYDEBUG(140, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -1806,9 +1768,9 @@ yy142:
 #line 490 "Zend/zend_ini_scanner.l"
                { /* End of option value (if EOF is reached before EOL) */
        BEGIN(INITIAL);
-       return 0;
+       return END_OF_LINE;
 }
-#line 1812 "Zend/zend_ini_scanner.c"
+#line 1774 "Zend/zend_ini_scanner.c"
 yy143:
                YYDEBUG(143, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -1836,7 +1798,7 @@ yy147:
        SCNG(lineno)++;
        return END_OF_LINE;
 }
-#line 1840 "Zend/zend_ini_scanner.c"
+#line 1802 "Zend/zend_ini_scanner.c"
 yy148:
                YYDEBUG(148, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -1942,7 +1904,7 @@ yy158:
                { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
        RETURN_TOKEN(TC_RAW, yytext, yyleng);
 }
-#line 1946 "Zend/zend_ini_scanner.c"
+#line 1908 "Zend/zend_ini_scanner.c"
 yy159:
                YYDEBUG(159, *YYCURSOR);
                ++YYCURSOR;
@@ -1952,7 +1914,7 @@ yy159:
                {
        return 0;
 }
-#line 1956 "Zend/zend_ini_scanner.c"
+#line 1918 "Zend/zend_ini_scanner.c"
 yy161:
                YYDEBUG(161, *YYCURSOR);
                ++YYCURSOR;
@@ -1967,7 +1929,7 @@ yy162:
        SCNG(lineno)++;
        return ']';
 }
-#line 1971 "Zend/zend_ini_scanner.c"
+#line 1933 "Zend/zend_ini_scanner.c"
 yy163:
                YYDEBUG(163, *YYCURSOR);
                ++YYCURSOR;
@@ -2092,7 +2054,7 @@ yy172:
                { /* Get rest as section/offset value */
        RETURN_TOKEN(TC_STRING, yytext, yyleng);
 }
-#line 2096 "Zend/zend_ini_scanner.c"
+#line 2058 "Zend/zend_ini_scanner.c"
 yy173:
                YYDEBUG(173, *YYCURSOR);
                yyaccept = 0;
@@ -2115,7 +2077,7 @@ yy175:
                {
        return 0;
 }
-#line 2119 "Zend/zend_ini_scanner.c"
+#line 2081 "Zend/zend_ini_scanner.c"
 yy176:
                YYDEBUG(176, *YYCURSOR);
                ++YYCURSOR;
@@ -2127,28 +2089,17 @@ yy177:
        yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
        return '"';
 }
-#line 2131 "Zend/zend_ini_scanner.c"
+#line 2093 "Zend/zend_ini_scanner.c"
 yy178:
                YYDEBUG(178, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych <= 0x00) goto yy175;
-                               goto yy193;
-                       } else {
-                               if (yych <= '9') goto yy175;
-                               if (yych <= '@') goto yy193;
-                               goto yy175;
-                       }
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy175;
+                       if (yych <= '[') goto yy193;
+                       goto yy198;
                } else {
-                       if (yych <= '`') {
-                               if (yych == '\\') goto yy198;
-                               goto yy193;
-                       } else {
-                               if (yych <= 'z') goto yy175;
-                               if (yych <= '{') goto yy218;
-                               goto yy193;
-                       }
+                       if (yych == '{') goto yy218;
+                       goto yy193;
                }
 yy179:
                YYDEBUG(179, *YYCURSOR);
@@ -2204,7 +2155,7 @@ yy183:
                { /* Get number option value as string */
        RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
 }
-#line 2208 "Zend/zend_ini_scanner.c"
+#line 2159 "Zend/zend_ini_scanner.c"
 yy184:
                YYDEBUG(184, *YYCURSOR);
                yyaccept = 3;
@@ -2234,7 +2185,7 @@ yy185:
                { /* Get constant option value */
        RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
 }
-#line 2238 "Zend/zend_ini_scanner.c"
+#line 2189 "Zend/zend_ini_scanner.c"
 yy186:
                YYDEBUG(186, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -2253,7 +2204,7 @@ yy188:
        SCNG(lineno)++;
        return ']';
 }
-#line 2257 "Zend/zend_ini_scanner.c"
+#line 2208 "Zend/zend_ini_scanner.c"
 yy189:
                YYDEBUG(189, *YYCURSOR);
                ++YYCURSOR;
@@ -2300,21 +2251,12 @@ yy196:
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               if (yych <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych >= 0x01) goto yy193;
-                       } else {
-                               if (yych <= '9') goto yy197;
-                               if (yych <= '@') goto yy193;
-                       }
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy197;
+                       if (yych <= '[') goto yy193;
+                       goto yy198;
                } else {
-                       if (yych <= '\\') {
-                               if (yych <= '[') goto yy193;
-                               goto yy198;
-                       } else {
-                               if (yych <= '`') goto yy193;
-                               if (yych >= '|') goto yy193;
-                       }
+                       if (yych != '{') goto yy193;
                }
 yy197:
                YYDEBUG(197, *YYCURSOR);
@@ -2583,7 +2525,7 @@ yy214:
        }
        RETURN_TOKEN(TC_RAW, yytext, yyleng);
 }
-#line 2587 "Zend/zend_ini_scanner.c"
+#line 2529 "Zend/zend_ini_scanner.c"
 yy218:
                YYDEBUG(218, *YYCURSOR);
                ++YYCURSOR;
@@ -2594,7 +2536,7 @@ yy218:
        yy_push_state(ST_VARNAME TSRMLS_CC);
        return TC_DOLLAR_CURLY;
 }
-#line 2598 "Zend/zend_ini_scanner.c"
+#line 2540 "Zend/zend_ini_scanner.c"
 yy220:
                YYDEBUG(220, *YYCURSOR);
                yyaccept = 0;
@@ -2776,9 +2718,9 @@ yy226:
 #line 490 "Zend/zend_ini_scanner.l"
                { /* End of option value (if EOF is reached before EOL) */
        BEGIN(INITIAL);
-       return 0;
+       return END_OF_LINE;
 }
-#line 2782 "Zend/zend_ini_scanner.c"
+#line 2724 "Zend/zend_ini_scanner.c"
 yy227:
                YYDEBUG(227, *YYCURSOR);
                yyaccept = 0;
@@ -2791,7 +2733,7 @@ yy228:
                { /* Get everything else as option/offset value */
        RETURN_TOKEN(TC_STRING, yytext, yyleng);
 }
-#line 2795 "Zend/zend_ini_scanner.c"
+#line 2737 "Zend/zend_ini_scanner.c"
 yy229:
                YYDEBUG(229, *YYCURSOR);
                yyaccept = 1;
@@ -2804,7 +2746,7 @@ yy230:
                {
        RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
 }
-#line 2808 "Zend/zend_ini_scanner.c"
+#line 2750 "Zend/zend_ini_scanner.c"
 yy231:
                YYDEBUG(231, *YYCURSOR);
                ++YYCURSOR;
@@ -2817,7 +2759,7 @@ yy232:
        SCNG(lineno)++;
        return END_OF_LINE;
 }
-#line 2821 "Zend/zend_ini_scanner.c"
+#line 2763 "Zend/zend_ini_scanner.c"
 yy233:
                YYDEBUG(233, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -2835,7 +2777,7 @@ yy235:
                { /* Boolean operators */
        return yytext[0];
 }
-#line 2839 "Zend/zend_ini_scanner.c"
+#line 2781 "Zend/zend_ini_scanner.c"
 yy236:
                YYDEBUG(236, *YYCURSOR);
                ++YYCURSOR;
@@ -2847,28 +2789,17 @@ yy237:
        yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
        return '"';
 }
-#line 2851 "Zend/zend_ini_scanner.c"
+#line 2793 "Zend/zend_ini_scanner.c"
 yy238:
                YYDEBUG(238, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych <= 0x00) goto yy226;
-                               goto yy254;
-                       } else {
-                               if (yych <= '9') goto yy226;
-                               if (yych <= '@') goto yy254;
-                               goto yy226;
-                       }
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy226;
+                       if (yych <= '[') goto yy254;
+                       goto yy261;
                } else {
-                       if (yych <= '`') {
-                               if (yych == '\\') goto yy261;
-                               goto yy254;
-                       } else {
-                               if (yych <= 'z') goto yy226;
-                               if (yych <= '{') goto yy299;
-                               goto yy254;
-                       }
+                       if (yych == '{') goto yy299;
+                       goto yy254;
                }
 yy239:
                YYDEBUG(239, *YYCURSOR);
@@ -2938,7 +2869,7 @@ yy243:
                { /* Get number option value as string */
        RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
 }
-#line 2942 "Zend/zend_ini_scanner.c"
+#line 2873 "Zend/zend_ini_scanner.c"
 yy244:
                YYDEBUG(244, *YYCURSOR);
                yyaccept = 2;
@@ -2955,7 +2886,7 @@ yy245:
        BEGIN(INITIAL);
        return END_OF_LINE;
 }
-#line 2959 "Zend/zend_ini_scanner.c"
+#line 2890 "Zend/zend_ini_scanner.c"
 yy247:
                YYDEBUG(247, *YYCURSOR);
                yyaccept = 4;
@@ -2995,7 +2926,7 @@ yy248:
                { /* Get constant option value */
        RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
 }
-#line 2999 "Zend/zend_ini_scanner.c"
+#line 2930 "Zend/zend_ini_scanner.c"
 yy249:
                YYDEBUG(249, *YYCURSOR);
                yyaccept = 4;
@@ -3383,21 +3314,12 @@ yy259:
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               if (yych <= 'Z') {
-                       if (yych <= '/') {
-                               if (yych >= 0x01) goto yy254;
-                       } else {
-                               if (yych <= '9') goto yy260;
-                               if (yych <= '@') goto yy254;
-                       }
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy260;
+                       if (yych <= '[') goto yy254;
+                       goto yy261;
                } else {
-                       if (yych <= '\\') {
-                               if (yych <= '[') goto yy254;
-                               goto yy261;
-                       } else {
-                               if (yych <= '`') goto yy254;
-                               if (yych >= '|') goto yy254;
-                       }
+                       if (yych != '{') goto yy254;
                }
 yy260:
                YYDEBUG(260, *YYCURSOR);
@@ -3500,7 +3422,7 @@ yy265:
                { /* TRUE value (when used outside option value/offset this causes parse error!) */
        RETURN_TOKEN(BOOL_TRUE, "1", 1);
 }
-#line 3504 "Zend/zend_ini_scanner.c"
+#line 3426 "Zend/zend_ini_scanner.c"
 yy266:
                YYDEBUG(266, *YYCURSOR);
                ++YYCURSOR;
@@ -3704,7 +3626,7 @@ yy272:
                { /* FALSE value (when used outside option value/offset this causes parse error!)*/
        RETURN_TOKEN(BOOL_FALSE, "", 0);
 }
-#line 3708 "Zend/zend_ini_scanner.c"
+#line 3630 "Zend/zend_ini_scanner.c"
 yy273:
                YYDEBUG(273, *YYCURSOR);
                ++YYCURSOR;
@@ -4086,7 +4008,7 @@ yy285:
        SCNG(lineno)++;
        return END_OF_LINE;
 }
-#line 4090 "Zend/zend_ini_scanner.c"
+#line 4012 "Zend/zend_ini_scanner.c"
 yy286:
                YYDEBUG(286, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -4307,7 +4229,7 @@ yy295:
        }
        RETURN_TOKEN(TC_RAW, yytext, yyleng);
 }
-#line 4311 "Zend/zend_ini_scanner.c"
+#line 4233 "Zend/zend_ini_scanner.c"
 yy299:
                YYDEBUG(299, *YYCURSOR);
                ++YYCURSOR;
@@ -4318,7 +4240,7 @@ yy299:
        yy_push_state(ST_VARNAME TSRMLS_CC);
        return TC_DOLLAR_CURLY;
 }
-#line 4322 "Zend/zend_ini_scanner.c"
+#line 4244 "Zend/zend_ini_scanner.c"
 yy301:
                YYDEBUG(301, *YYCURSOR);
                ++YYCURSOR;
@@ -4428,7 +4350,7 @@ yy310:
                {
        return 0;
 }
-#line 4432 "Zend/zend_ini_scanner.c"
+#line 4354 "Zend/zend_ini_scanner.c"
 yy312:
                YYDEBUG(312, *YYCURSOR);
                ++YYCURSOR;
@@ -4441,7 +4363,7 @@ yy313:
                { /* Variable name */
        RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
 }
-#line 4445 "Zend/zend_ini_scanner.c"
+#line 4367 "Zend/zend_ini_scanner.c"
 yy314:
                YYDEBUG(314, *YYCURSOR);
                ++YYCURSOR;
@@ -4452,7 +4374,7 @@ yy314:
        yy_pop_state(TSRMLS_C);
        return '}';
 }
-#line 4456 "Zend/zend_ini_scanner.c"
+#line 4378 "Zend/zend_ini_scanner.c"
 yy316:
                YYDEBUG(316, *YYCURSOR);
                ++YYCURSOR;
index 96c47d3141ef47a47bdf11e69ebecbec88b1fe77..e2fe1d945347367086020ff996087213cd81717f 100644 (file)
@@ -320,7 +320,7 @@ SINGLE_QUOTED_CHARS [^']
 RAW_VALUE_CHARS [^=\n\r;]
 
 /* Allow using ${foobar} in sections, quoted strings and values */
-LITERAL_DOLLAR ("$"([^a-zA-Z0-9{\000]|("\\"{ANY_CHAR})))
+LITERAL_DOLLAR ("$"([^{\000]|("\\"{ANY_CHAR})))
 VALUE_CHARS         ([^$= \t\n\r;&|~()!"'\000]|{LITERAL_DOLLAR})
 SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR})
 DOUBLE_QUOTES_CHARS ([^$"\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR})
@@ -489,7 +489,7 @@ DOUBLE_QUOTES_CHARS ([^$"\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR})
 
 <ST_VALUE,ST_RAW>[^] { /* End of option value (if EOF is reached before EOL) */
        BEGIN(INITIAL);
-       return 0;
+       return END_OF_LINE;
 }
 
 <*>[^] {