Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:23854 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 75689 invoked by uid 1010); 1 Jun 2006 16:59:01 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 75673 invoked from network); 1 Jun 2006 16:59:01 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 1 Jun 2006 16:59:01 -0000 X-PHP-List-Original-Sender: pollita@php.net X-Host-Fingerprint: 65.111.164.201 unknown Linux 2.4/2.6 Received: from ([65.111.164.201:39160] helo=danica.alphaweb.net) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id CB/7C-07504-4DC1F744 for ; Thu, 01 Jun 2006 12:59:00 -0400 Received: from talos.alphaweb.net ([69.12.155.129] helo=OHRLVN4523SG) by danica.alphaweb.net with esmtpsa (TLS-1.0:RSA_ARCFOUR_MD5:16) (Exim 4.50) id 1FlqV7-00012L-IC; Thu, 01 Jun 2006 12:58:25 -0400 Message-ID: <003501c6859c$a5b988b0$88051fac@OHRLVN4523SG> To: Cc: References: <447F154F.6070009@gmail.com> Date: Thu, 1 Jun 2006 09:58:35 -0700 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="UTF-8"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2670 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2670 Subject: Re: Question regarding extension function entries. From: pollita@php.net ("Sara Golemon") > According to all documentation I've found, a > zend_function_entry[] array should be ended > with { NULL, NULL, NULL }, but I've noticed > that _zend_function_entry now has five parts; > Your analysis is correct, however(functionally speaking) the only attribute that NEEDs to be explicitly set NULL is fname. The rest can be garbage and everything will still function fine. The second and third elements are set NULL becasue they can be safely without losing version agnosticism. We could extend the skeleton with a couple of zeros in those elements, but it'd need a note on the indavisability of doing that if you need BC with 4 (the compiler would spit error about excess elements in initializer). I'm all for a macro, maybe even a full start/end set like the global/ini/arg_info declarations have. Again, there's version BC to be considered, but that can be solved with some #ifndefs in the skeleton... PHP_BEGIN_FUNCTION_LIST(extname) PHP_FE(...) PHP_FE(...) PHP_FE(...) PHP_END_FUNCTION_LIST(extname) Same for the module entry.... These are all just window dressing though so unless someone else sees this as a worthwhile thing...*shrug* -Sara