parser.Parse hangs up
vasileknik76 opened this issue · comments
I have run parse with following PHP code:
<?php
$foo = 5;
echo "$foo$";
and parser hangs up. Debug output:
reduce 80 in:
state-0
char tok--1 in state-2
lex T_VARIABLE(57354)
char tok--1 in state-107
reduce 441 in:
state-107
char tok--1 in state-80
reduce 432 in:
state-80
char tok--1 in state-48
lex '='(61)
reduce 438 in:
state-48
char '=' in state-44
char tok--1 in state-203
lex T_LNUMBER(57350)
char tok--1 in state-94
reduce 402 in:
state-94
char tok--1 in state-72
reduce 364 in:
state-72
char tok--1 in state-45
reduce 422 in:
state-45
char tok--1 in state-392
lex ';'(59)
reduce 298 in:
state-392
char ';' in state-45
reduce 422 in:
state-45
char ';' in state-28
char tok--1 in state-154
reduce 146 in:
state-154
char tok--1 in state-5
reduce 87 in:
state-5
char tok--1 in state-3
reduce 79 in:
state-3
char tok--1 in state-2
lex T_ECHO(57361)
char tok--1 in state-26
lex '"'(34)
char tok--1 in state-105
lex T_VARIABLE(57354)
char tok--1 in state-259
Hi @vasileknik76.
I have solved this bug. It was due to the scanner getting to infinite loop when $
appear between a variable and the end of a template string.