Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:21939 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 13626 invoked by uid 1010); 19 Feb 2006 10:57:04 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 13611 invoked from network); 19 Feb 2006 10:57:04 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 19 Feb 2006 10:57:04 -0000 X-Host-Fingerprint: 81.169.182.136 ajaxatwork.net Linux 2.4/2.6 Received: from ([81.169.182.136:41956] helo=strato.aixcept.de) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id 09/F8-24075-EFE48F34 for ; Sun, 19 Feb 2006 05:57:03 -0500 Received: from [192.168.1.3] (dslb-084-063-013-216.pools.arcor-ip.net [84.63.13.216]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by strato.aixcept.de (Postfix) with ESMTP id ECDE635C1D1 for ; Sun, 19 Feb 2006 11:56:58 +0100 (CET) Date: Sun, 19 Feb 2006 11:57:04 +0100 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <1692386645.20060219115704@marcus-boerger.de> To: internals@lists.php.net MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Deprecation of functions From: helly@php.net (Marcus Boerger) Hello internals, i just made up a tiny patch that allows us to deprecate functions. The background is that in the past we changed to issue E_STRICT or E_NOTICE for stuff we are going to change in later versions. This is right now not easily possible when we change to replace a functions name. The usual way to add the new name is to rename the function and add an alias with the old name but for the deprecation message we would need to have the function implementation twice so that one can issue the message. The patch now allows us to specify a function flag on the alias. I checked an early version of the patch with Andi and he didn't like the introduction of another if(). For the explicit calling handler i see no problem in adding it since it is just an integer comparision which makes out less than 0.1% of the zend_call_function() for the function-call opcode i hid the check behind the abstract check. So there is no new penalty. And actually i think the abstract check is neccessary for the the other part also. So the patch found an error and doesn't come with any additional penalty at all. Patch is available for both 5.1 and HEAD here: http://php.net/~helly/php/ext/ze2/ze2-deprecated-20060219-5_1.diff.txt http://php.net/~helly/php/ext/ze2/ze2-deprecated-20060219-HEAD.diff.txt Anyone against? Best regards, Marcus