Hi, Probably not much chance of this happening, but while looking through HEAD's lexer/parser code (which word is correct? :-)), I noticed that there's no rule to match a backslash followed by a \n newline inside single quotes, resulting in "Unexpected character in input ..." The ST_SINGLE_QUOTE state used to match this (as in 5.2), but was removed in version 1.132 of zend_language_scanner.l.
Untested, but I think the attached patch should take care of it. Matt
Index: zend_language_scanner.l =================================================================== RCS file: /repository/ZendEngine2/zend_language_scanner.l,v retrieving revision 1.158 diff -u -r1.158 zend_language_scanner.l --- zend_language_scanner.l 18 Sep 2006 17:59:10 -0000 1.158 +++ zend_language_scanner.l 19 Oct 2006 03:38:34 -0000 @@ -2223,7 +2223,7 @@ } -<ST_IN_SCRIPTING>([']([^'\\]|("\\".))*[']) { +<ST_IN_SCRIPTING>([']([^'\\]|("\\"{ANY_CHAR}))*[']) { if (UG(unicode)) { return zend_scan_unicode_single_string(zendlval TSRMLS_CC); } else { @@ -2232,7 +2232,7 @@ } -<ST_IN_SCRIPTING>("b'"([^'\\]|("\\".))*[']) { +<ST_IN_SCRIPTING>("b'"([^'\\]|("\\"{ANY_CHAR}))*[']) { yytext++; /* adjust for 'b' */ yyleng--; return zend_scan_binary_single_string(zendlval TSRMLS_CC);
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php