Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:86081 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 19793 invoked from network); 30 Apr 2015 08:24:22 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 30 Apr 2015 08:24:22 -0000 Authentication-Results: pb1.pair.com header.from=nikita.ppv@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=nikita.ppv@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.212.181 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 209.85.212.181 mail-wi0-f181.google.com Received: from [209.85.212.181] ([209.85.212.181:37528] helo=mail-wi0-f181.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 39/F4-27026-5B6E1455 for ; Thu, 30 Apr 2015 04:24:21 -0400 Received: by widdi4 with SMTP id di4so8786951wid.0 for ; Thu, 30 Apr 2015 01:24:18 -0700 (PDT) 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=1VZ033eUp41TighA6ZuDRvVIJSmatlY9IzVHnLaqOn8=; b=tuT0p78hCs4v4NCgzyzmTCN8wtBqktN8lb5ZKS2ylZiL9JudLFodMygkdzrUydixBc SJZrE5rjS3fTAmb17pPgn5PsUx8KspzWapXlfuFs5CRB05wgEKswRirNcwpP5Cn3h6lk K7gHSgXBo4i4yL4OhYylnhhyX17TIPwg/oSgipOnc9xqTW8K1GFpQnjYPMpKMCNjZP0n KcgAjhqDq5zrSS3k4nfgD4pU01P2cZeUqEGWkeUF2/uPnQbvEtkbWDnRwSXNLEWfTwhL jgue5Cdx6NQWRs2BAirOKKomcnI/DZkJQfS2kgzQeKGLXrYcqGWoJ8pHiOfQmYEKA9Pu LE0A== MIME-Version: 1.0 X-Received: by 10.194.142.232 with SMTP id rz8mr6149248wjb.78.1430382258151; Thu, 30 Apr 2015 01:24:18 -0700 (PDT) Received: by 10.27.86.133 with HTTP; Thu, 30 Apr 2015 01:24:18 -0700 (PDT) In-Reply-To: <55415E10.7040908@gmx.de> References: <55415E10.7040908@gmx.de> Date: Thu, 30 Apr 2015 10:24:18 +0200 Message-ID: To: Christoph Becker Cc: PHP internals , Nikita Popov , Sara Golemon Content-Type: multipart/alternative; boundary=089e011829e263e8640514ecd233 Subject: Re: Reserve even more type hints RFC From: nikita.ppv@gmail.com (Nikita Popov) --089e011829e263e8640514ecd233 Content-Type: text/plain; charset=UTF-8 On Thu, Apr 30, 2015 at 12:41 AM, Christoph Becker wrote: > Hi everybody! > > I've noticed that the "Reserve Even More Types in PHP 7" RFC[1] has been > moved to "Process and Policy" with the comment "needs no impl". > However, the RFC states: > > | This RFC does not fully reserve them as keywords; it only prohibits > | their usage as class, interface and trait names. > > In my opinion, this has to be enforced by throwing a fatal error > ("Cannot use '*' as class name as it is reserved"), whenever one of the > reserved identifiers (resource, object, mixed, numeric) is used as > class, interface or trait name. > > Relying on documentation only seems to be insufficient to me. Consider > a developer not reading the documentation and facing the issue that > his/her code might break with PHP 7.1 (i.e. a minor version). > > The "Backward Incompatible Changes" section appears to support my opinion. > > [1] I've moved the RFC based on Sara's mail in the voting thread [1]. Quoting: > There's no language in the RFC about > actually throwing errors or other code-breaking behavior. Therefore, > even should all of them pass, it does *NOT* mean that your code using > these names suddenly stops working on PHP7. It means that you have > been warned that using the names of intrinsics is a bad idea, and that > the language reserves the /right/ to make doing so an error at some > point in the future. I also know that at least some of the votes were cast under the assumption that this is just a "documentation" reservation, as opposed to throwing errors. /cc Sara Nikita [1]: http://markmail.org/message/3zehjdlvuhv5sosq --089e011829e263e8640514ecd233--