Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:35060 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 20061 invoked by uid 1010); 31 Jan 2008 16:27:42 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 20045 invoked from network); 31 Jan 2008 16:27:42 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 31 Jan 2008 16:27:42 -0000 Authentication-Results: pb1.pair.com header.from=helly@php.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=helly@php.net; spf=unknown; sender-id=unknown Received-SPF: unknown (pb1.pair.com: domain php.net does not designate 85.214.94.56 as permitted sender) X-PHP-List-Original-Sender: helly@php.net X-Host-Fingerprint: 85.214.94.56 aixcept.net Linux 2.6 Received: from [85.214.94.56] ([85.214.94.56:42171] helo=h1149922.serverkompetenz.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id B1/14-15787-AF6F1A74 for ; Thu, 31 Jan 2008 11:27:40 -0500 Received: from dhcp-172-28-202-237.zrh.corp.google.com (unknown [193.142.125.1]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by h1149922.serverkompetenz.net (Postfix) with ESMTP id A75E21B3524; Thu, 31 Jan 2008 17:27:35 +0100 (CET) Date: Thu, 31 Jan 2008 17:27:35 +0100 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <1679569193.20080131172735@marcus-boerger.de> To: Masaki Fujimoto CC: internals@lists.php.net In-Reply-To: <47A1E22B.6020200@php.net> References: <47A1E22B.6020200@php.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] [patch] zend_call_method_with_N_params() From: helly@php.net (Marcus Boerger) Hello Masaki, unfortunately we cannot use any C99 extension and must stick to C89. Also I do not really see a reason to use ... in the actual function definition. The reason for the way the function is written, is to avoid using emalloc. Now, we can probably live with up to four parameters for PHP 5.3 and HEAD. But we cannot allow this in 5.2 as it would be an API change. So if you can comeup with a change that will simply add two parameters for zend_call_method() and provide the two additionla macros as well as fixing the ones being present already then *I* think it is fine. marcus Thursday, January 31, 2008, 3:58:51 PM, you wrote: > hello marcus, > after a long interval, I've restarted to hack PHP and ZE again, and I > found that zend_call_method could take only 2 args at most...(I just > wanted to call methods w/ 3 or more args in my extensions:) > I think we can easily rewrite this w/ va_list, and since most of the > extensions are call zend_call_method() via zend_call_method_with* macro > so that no BC breaking things will happen. > # AFAIK only spl use zend_call_method() directly and perhaps we can > easily sync w/ updated interfaces (TSRM fixes will do) > pathces are here: > [PHP_5_2 / PHP_5_3] > http://labs.gree.jp/data/patch/zend_interfaces_var_list.php_5_2.patch > [HEAD] > http://labs.gree.jp/data/patch/zend_interfaces_var_list.head.patch > # C99 feature (__VA_ARGS__) is used in my patch for HEAD...(is it > acceptable?) > if this is ok, it's much appreciated if you apply these patches. thank you. > -- > Masaki Fujimoto > Best regards, Marcus