@@ -96,6 +96,12 @@ unicode \\u[0-9A-Fa-f]{4}
9696 BEGIN xQUOTED;
9797 }
9898
99+ <INITIAL>\\ {
100+ yyless(0);
101+ addstring(true, " " , 0);
102+ BEGIN xNONQUOTED;
103+ }
104+
99105<xNONQUOTED>{any}+ {
100106 addstring(false, yytext, yyleng);
101107 }
@@ -120,27 +126,27 @@ unicode \\u[0-9A-Fa-f]{4}
120126 return checkSpecialVal();
121127 }
122128
123- <INITIAL, xNONQUOTED,xQUOTED>\\ [\"\\ \/] {
129+ <xNONQUOTED,xQUOTED>\\ [\"\\ \/] {
124130 addchar(false, yytext[1]);
125131 }
126132
127- <INITIAL, xNONQUOTED,xQUOTED>\\ b { addchar(false, '\b '); }
133+ <xNONQUOTED,xQUOTED>\\ b { addchar(false, '\b '); }
128134
129- <INITIAL, xNONQUOTED,xQUOTED>\\ f { addchar(false, '\f '); }
135+ <xNONQUOTED,xQUOTED>\\ f { addchar(false, '\f '); }
130136
131- <INITIAL, xNONQUOTED,xQUOTED>\\ n { addchar(false, '\n '); }
137+ <xNONQUOTED,xQUOTED>\\ n { addchar(false, '\n '); }
132138
133- <INITIAL, xNONQUOTED,xQUOTED>\\ r { addchar(false, '\r '); }
139+ <xNONQUOTED,xQUOTED>\\ r { addchar(false, '\r '); }
134140
135- <INITIAL, xNONQUOTED,xQUOTED>\\ t { addchar(false, '\t '); }
141+ <xNONQUOTED,xQUOTED>\\ t { addchar(false, '\t '); }
136142
137- <INITIAL, xNONQUOTED,xQUOTED>{unicode}+ { parseUnicode(yytext, yyleng); }
143+ <xNONQUOTED,xQUOTED>{unicode}+ { parseUnicode(yytext, yyleng); }
138144
139- <INITIAL, xNONQUOTED,xQUOTED>\\ u { yyerror(" Unicode sequence is invalid" ); }
145+ <xNONQUOTED,xQUOTED>\\ u { yyerror(" Unicode sequence is invalid" ); }
140146
141- <INITIAL, xNONQUOTED,xQUOTED>\\ . { yyerror(" Escape sequence is invalid" ); }
147+ <xNONQUOTED,xQUOTED>\\ . { yyerror(" Escape sequence is invalid" ); }
142148
143- <INITIAL, xNONQUOTED,xQUOTED>\\ { yyerror(" Unexpected end after backslesh" ); }
149+ <xNONQUOTED,xQUOTED>\\ { yyerror(" Unexpected end after backslesh" ); }
144150
145151<xQUOTED><<EOF>> { yyerror(" Unexpected end of quoted string" ); }
146152
0 commit comments