Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:31183 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 16861 invoked by uid 1010); 23 Jul 2007 13:21:48 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 16845 invoked from network); 23 Jul 2007 13:21:48 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 23 Jul 2007 13:21:48 -0000 Authentication-Results: pb1.pair.com header.from=gwynne@wanderingknights.org; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=gwynne@wanderingknights.org; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain wanderingknights.org from 208.97.132.207 cause and error) X-PHP-List-Original-Sender: gwynne@wanderingknights.org X-Host-Fingerprint: 208.97.132.207 sd-green-bigip-207.dreamhost.com Linux 2.4/2.6 Received: from [208.97.132.207] ([208.97.132.207:40272] helo=postalmail-a3.g.dreamhost.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 3A/3A-32314-86BA4A64 for ; Mon, 23 Jul 2007 09:21:47 -0400 Received: from [192.168.2.197] (c-24-61-79-221.hsd1.ma.comcast.net [24.61.79.221]) by postalmail-a3.g.dreamhost.com (Postfix) with ESMTP id 1110D4C08D for ; Mon, 23 Jul 2007 06:21:42 -0700 (PDT) Mime-Version: 1.0 (Apple Message framework v752.3) Content-Transfer-Encoding: 7bit Message-ID: <3B3E836C-A029-4877-97EB-D935E5853C9A@wanderingknights.org> Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed To: PHP Developers Mailing List Date: Mon, 23 Jul 2007 09:21:40 -0400 X-Mailer: Apple Mail (2.752.3) Subject: Nowdocs revised From: gwynne@wanderingknights.org (Gwynne Raskind) I've taken my original nowdocs patch and revamped it to be much more efficient and functional. This version: - Parses nowdocs as constant strings rather than ADD_STRING opcodes. - Allows the flex scanner do less work. - Enables nowdocs to be used in static_scalar contexts, such as class constants and static variable initializers. - Includes more tests than before. - Is fully compatible with the most recent CVS checkouts for HEAD and PHP_5_2, and also merges cleanly into a 5.2.3 source tree. - Breaks zero regression tests out of all 3000 or so. The patch also cleans up the zend_language_scanner.l code a little bit, cosmetically speaking, and the PHP_5_2 patch updates the scanner by factoring out single-quoted string scanning, as HEAD already did. The patch is available for download at , and browsable at . -- Gwynne, Daughter of the Code "This whole world is an asylum for the incurable."