Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:79480 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 4586 invoked from network); 8 Dec 2014 20:06:27 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 Dec 2014 20:06:27 -0000 Authentication-Results: pb1.pair.com smtp.mail=nikita.ppv@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=nikita.ppv@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.41 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 74.125.82.41 mail-wg0-f41.google.com Received: from [74.125.82.41] ([74.125.82.41:35734] helo=mail-wg0-f41.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 96/07-62069-2C406845 for ; Mon, 08 Dec 2014 15:06:27 -0500 Received: by mail-wg0-f41.google.com with SMTP id y19so7122851wgg.0 for ; Mon, 08 Dec 2014 12:06:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=BoIFm6zdyMfowDerI/lhRp/GYVuLeTdtMYDhg1AXAWY=; b=sBFkm499x+SjBg3YTg5IElvy++xPC8Dmz/gbL2WjtI1Be1YK3qbW31C2n/aUiaCOEH Lqs8KFXW66gKN/Bez2E8LrHbVn2VGD0vvuKtEAaqsNHXYhZQ+ilkkcAkaWzY1VtE82ub Y9GEEFxEBTRosdIaYgffzJafd/pnvZNgv1je195cOWXKqM/ikzB4l8Rq1SjG7cRMQc5t moJ0NnIXyt/wccjgzFtmHVxi6NUArk5lf5+3vwXBytfNUz9osEjWfgVNk5a2zPw24Oi8 n0dEkVMhjeOaK5Yc8Aa0TA/MteCm9mc/XYPWJ1QDinxcAc1cy7eZc7peSgbnFA1WxoQr kuqQ== MIME-Version: 1.0 X-Received: by 10.180.211.2 with SMTP id my2mr3340589wic.3.1418069183984; Mon, 08 Dec 2014 12:06:23 -0800 (PST) Received: by 10.27.10.196 with HTTP; Mon, 8 Dec 2014 12:06:23 -0800 (PST) In-Reply-To: References: Date: Mon, 8 Dec 2014 21:06:23 +0100 Message-ID: To: Dmitry Stogov Cc: "guilhermeblanco@gmail.com" , Levi Morrison , PHP internals Content-Type: multipart/alternative; boundary=001a11c37c18fa7c020509b9f52e Subject: Re: [PHP-DEV] Zend language parser improvements From: nikita.ppv@gmail.com (Nikita Popov) --001a11c37c18fa7c020509b9f52e Content-Type: text/plain; charset=UTF-8 On Mon, Dec 8, 2014 at 11:45 AM, Dmitry Stogov wrote: > I don't see technical problems with the patch. > However, I also don't see any significant benefits. > From the user perspective it'll just change error messages and prevent > "final final class" declarations. > > Nikita, what do you think? > > Thanks. Dmitry. > The three parts: 1. Use ZEND_ACC_FINAL instead of ZEND_ACC_FINAL_CLASS: Looks sensible, given how many extensions have confused this. We should be careful that this change does not make anything final that many people extended (even if it was originally meant to be final.) 2. Don't use magic value for ZEND_ACC_TRAIT: Also makes sense, the behavior of the current value is pretty unclear. 3. Changing the grammar to separate class/trait declarations and have a modifier list: This doesn't really make much sense as things currently are (only one modifier allowed). I'd suggest to change this when we actually support multiple modifiers (e.g. with the static classes patch). Nikita --001a11c37c18fa7c020509b9f52e--