1
0
mirror of https://github.com/php/php-src.git synced 2026-04-07 16:13:32 +02:00

Fix 'b' prefix in highlighting and tokenizer. (Matt W)

This commit is contained in:
Andrei Zmievski
2007-01-09 17:37:53 +00:00
parent 5709b64739
commit 39fa36a0be

View File

@@ -1578,14 +1578,10 @@ NEWLINE ("\r"|"\n"|"\r\n")
<ST_IN_SCRIPTING>("b"?["]([^$"\\]|("\\".))*["]) {
register char *s, *t;
char *end;
int bprefix = (*yytext == 'b') ? 1 : 0;
if (*yytext == 'b') {
yytext++;
yyleng--;
}
zendlval->value.str.val = estrndup(yytext+1, yyleng-2);
zendlval->value.str.len = yyleng-2;
zendlval->value.str.val = estrndup(yytext+bprefix+1, yyleng-bprefix-2);
zendlval->value.str.len = yyleng-bprefix-2;
zendlval->type = IS_STRING;
HANDLE_NEWLINES(yytext, yyleng);
@@ -1673,14 +1669,10 @@ NEWLINE ("\r"|"\n"|"\r\n")
<ST_IN_SCRIPTING>("b"?[']([^'\\]|("\\".))*[']) {
register char *s, *t;
char *end;
int bprefix = (*yytext == 'b') ? 1 : 0;
if (*yytext == 'b') {
yytext++;
yyleng--;
}
zendlval->value.str.val = estrndup(yytext+1, yyleng-2);
zendlval->value.str.len = yyleng-2;
zendlval->value.str.val = estrndup(yytext+bprefix+1, yyleng-bprefix-2);
zendlval->value.str.len = yyleng-bprefix-2;
zendlval->type = IS_STRING;
HANDLE_NEWLINES(yytext, yyleng);
@@ -1731,15 +1723,11 @@ NEWLINE ("\r"|"\n"|"\r\n")
<ST_IN_SCRIPTING>"b"?"<<<"{TABS_AND_SPACES}{LABEL}{NEWLINE} {
char *s;
if (*yytext == 'b') {
yytext++;
yyleng--;
}
int bprefix = (*yytext == 'b') ? 1 : 0;
CG(zend_lineno)++;
CG(heredoc_len) = yyleng-3-1-(yytext[yyleng-2]=='\r'?1:0);
s = yytext+3;
CG(heredoc_len) = yyleng-bprefix-3-1-(yytext[yyleng-2]=='\r'?1:0);
s = yytext+bprefix+3;
while ((*s == ' ') || (*s == '\t')) {
s++;
CG(heredoc_len)--;