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:
@@ -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)--;
|
||||
|
||||
Reference in New Issue
Block a user