Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:79929 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 71982 invoked from network); 25 Dec 2014 03:40:18 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 25 Dec 2014 03:40:18 -0000 Authentication-Results: pb1.pair.com header.from=francois@tekwire.net; sender-id=softfail Authentication-Results: pb1.pair.com smtp.mail=francois@tekwire.net; spf=softfail; sender-id=softfail Received-SPF: softfail (pb1.pair.com: domain tekwire.net does not designate 212.27.42.2 as permitted sender) X-PHP-List-Original-Sender: francois@tekwire.net X-Host-Fingerprint: 212.27.42.2 smtp2-g21.free.fr Received: from [212.27.42.2] ([212.27.42.2:5451] helo=smtp2-g21.free.fr) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 32/D1-39162-0278B945 for ; Wed, 24 Dec 2014 22:40:18 -0500 Received: from moorea (unknown [82.240.16.115]) by smtp2-g21.free.fr (Postfix) with ESMTP id 5284A4B0116; Thu, 25 Dec 2014 04:38:54 +0100 (CET) Reply-To: To: "'Pierre Joye'" , "'Ferenc Kovacs'" , , "'Alain Williams'" , , "'Yasuo Ohgaki'" , "'Xinchen Hui'" , "'Mike Dugan'" , "'Andrea Faulds'" , "'Kevin Israel'" Cc: "'PHP Internals'" References: <000c01d01ca0$7e70c850$7b5258f0$@yahoo.fr> <000d01d01ec2$46f2f280$d4d8d780$@yahoo.fr> In-Reply-To: <000d01d01ec2$46f2f280$d4d8d780$@yahoo.fr> Date: Thu, 25 Dec 2014 04:40:09 +0100 Message-ID: <009a01d01ff4$7d145470$773cfd50$@tekwire.net> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQHy2TXkJ8WGpUhO4XSbKZAIVj0P4QJ7VcdxAcFBlNACOIJ/mpwmgFgw Content-Language: fr X-Antivirus: avast! (VPS 141224-1, 24/12/2014), Outbound message X-Antivirus-Status: Clean Subject: RE: [PHP-DEV] Proposal for PHP 7 : case-sensitive symbols From: francois@tekwire.net (=?utf-8?Q?Fran=C3=A7ois_Laupretre?=) > > De : Pierre Joye [mailto:pierre.php@gmail.com] >=20 > > Anyone dying while waiting to see PHP having case sensitive symbols > > handling should go ahead with a RFC. For those interested, I just created a PR to raise an E_STRICT message = on class and function/method case mismatch : https://github.com/php/php-src/pull/965 It is not complete yet, as some cases are not trapped, especially for = functions, and the corresponding tests are missing. I'll try to write = the RFC (to propose the feature for PHP7) and finish the patch this = week. Checking constants is more complex than expected as the namespace = part is converted to lowercase during the compile phase. This RFC will = deal with classes and functions (including class methods) only. > He will also have to deal with > file ops while being at it. Should they remain case insensitive? Do > manual checks to match the path actually being requested (ie. possible > on windows using meta info), or keep everything the way it is now? Do you mean simulating case-sensitive paths on case-insensitive file = systems ? Why not, depending on the overhead it brings. Unfortunately, I = don't have the Windows skills required to work on the subject. About the overhead the check introduces, note that it is supposed to be = temporary. The final goal is to store symbols as-Is, eliminating the = need for lowercase conversions. This would remove a lot of allocations = and calls to zend_str_tolower_copy(). This would also remove a lot of = code.