Browse Source

Fixed bug #36037 (heredoc adds extra line number)

migration/RELEASE_1_0_0
Dmitry Stogov 21 years ago
parent
commit
465b131c2f
  1. 14
      Zend/tests/bug36037.phpt
  2. 2
      Zend/zend_language_scanner.l

14
Zend/tests/bug36037.phpt

@ -0,0 +1,14 @@
--TEST--
Bug #36037 (heredoc adds extra line number)
--FILE--
<?php
echo __LINE__, "\n";
$x=<<<XXX
123
YYY;
XXX;
echo __LINE__, "\n";
?>
--EXPECT--
2
7

2
Zend/zend_language_scanner.l

@ -2286,7 +2286,6 @@ NEWLINE ("\r"|"\n"|"\r\n")
<ST_HEREDOC>^{LABEL}(";")?{NEWLINE} {
int label_len;
CG(zend_lineno)++;
if (yytext[yyleng-2]=='\r') {
label_len = yyleng-2;
} else {
@ -2307,6 +2306,7 @@ NEWLINE ("\r"|"\n"|"\r\n")
BEGIN(ST_IN_SCRIPTING);
return T_END_HEREDOC;
} else {
CG(zend_lineno)++;
if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) {
return 0;
}

Loading…
Cancel
Save