Re: [PATCH] Some string changes/optimizations

From: Date: Tue, 06 May 2008 14:05:25 +0000
Subject: Re: [PATCH] Some string changes/optimizations
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to internals+get-37497@lists.php.net to get a copy of this message
Hi Felipe, all, The patches have been updated to fix the failing nowdoc_015.phpt test. http://realplain.com/php/string_optimizations.diff http://realplain.com/php/string_optimizations_5_3.diff The problem was that after removing the ST_START_NOWDOC stuff, the NOWDOC_CHARS pattern wasn't matching on: <<<'EOT' SingleLineOfTextThatMatchesThe_LABEL_Pattern EOT; I updated NOWDOC_CHARS, I think simplifying it a bit and making it more like HEREDOC_CHARS. (And this made zend_language_scanner.c ~5K smaller.) I previously tried to change it, and it just hung PHP when scanning a nowdoc (endless loop being generated somewhere, etc.), so I left it alone. Looking into it more now, with the new pattern, re2c is messing up (endless loop) with <ST_NOWDOC>{NOWDOC_CHARS}*{NEWLINE}+{LABEL}";"?[\n\r] And I had to change it to <ST_NOWDOC>({NOWDOC_CHARS}+{NEWLINE}+|{NEWLINE}+){LABEL}";"?[\n\r] Though the original should be equivalent... Well, hopefully it's all working correctly now! - Matt ----- Original Message ----- From: "Felipe Pena" Sent: Monday, May 05, 2008 > [...] > Hi Matt, the nowdoc_015.phpt fails in HEAD. > > -- > Regards, > Felipe Pena. >

« previous php.internals (#37497) next »