2011/7/25 Gwynne Raskind <gwy...@darkrainfall.org>:
> On this subject, I've been looking into what produces the largest
> warnings spam with a decent set of warnings turned on, and I'd like to
> recommend this patch. I can't commit it myself (I don't have Zend
> karma), nor would I care to without getting some opinion on it. The
> patch is against 5.4, but should apply equally to trunk. No API is
> changed, and no BC issues are created; it only adds a
> forward-compatible optional declarator for the end of a
> zend_function_entry struct. Obviously, the spammed warning in question
> is "missing initializer", with respect to every function entry struct
> in every extension, all of which simply use the {NULL, NULL, NULL}
> from ext_skel. The intention is to provide this constant to protect
> against future extensions of the structure. There are some other
> structures which could also benefit from such an initializer
> (smart_str and zend_fcall_info[_cache] come to mind).
>
> Index: Zend/zend_API.h
> ===================================================================
> --- Zend/zend_API.h     (revision 313656)
> +++ Zend/zend_API.h     (working copy)
> @@ -96,6 +96,8 @@
>  #define ZEND_NS_FALIAS(ns, name, alias, arg_info)              
> ZEND_NS_FENTRY(ns,
> name, ZEND_FN(alias), arg_info, 0)
>  #define ZEND_NS_DEP_FALIAS(ns, name, alias,
> arg_info)       ZEND_NS_FENTRY(ns, name, ZEND_FN(alias), arg_info,
> ZEND_ACC_DEPRECATED)
>
> +#define ZEND_FE_END            { NULL, NULL, NULL, 0, 0 }
> +
>  #define ZEND_ARG_INFO(pass_by_ref, name)                                     
>                   { #name,
> sizeof(#name)-1, NULL, 0, 0, 0, pass_by_ref},
>  #define ZEND_ARG_PASS_INFO(pass_by_ref)                                      
>                           { NULL, 0, NULL, 0, 0,
> 0, pass_by_ref},
>  #define ZEND_ARG_OBJ_INFO(pass_by_ref, name, classname, allow_null) {
> #name, sizeof(#name)-1, #classname, sizeof(#classname)-1, IS_OBJECT,
> allow_null, pass_by_ref},
> Index: main/php.h
> ===================================================================
> --- main/php.h  (revision 313656)
> +++ main/php.h  (working copy)
> @@ -359,6 +359,7 @@
>  #define PHP_MALIAS      ZEND_MALIAS
>  #define PHP_ABSTRACT_ME ZEND_ABSTRACT_ME
>  #define PHP_ME_MAPPING  ZEND_ME_MAPPING
> +#define PHP_FE_END             ZEND_FE_END
>
>  #define PHP_MODULE_STARTUP_N   ZEND_MODULE_STARTUP_N
>  #define PHP_MODULE_SHUTDOWN_N  ZEND_MODULE_SHUTDOWN_N
>
> -- Gwynne
>
>
>
> On Sat, Jul 23, 2011 at 19:23, Rasmus Lerdorf <syst...@php.net> wrote:
>> On 07/23/2011 04:07 PM, Gwynne Raskind wrote:
>>> Here's my question - if I made some smaller commits here and there to
>>> fix warnings in core, would that be accepted? I don't have time to do
>>> sweeping changes, but fixing one file today, a couple the next day,
>>> etc., is within my abilities (including making sure no regressions are
>>> introduced, of course).
>>
>> That's fine if it is done carefully. Note that the code needs to compile
>> on many different platforms, on many different compilers and versions of
>> compilers.
>>
>> -Rasmus
>>
>>
>

You're right. Someone already had reported it. I'll work on adding on
all extensions.

-- 
Regards,
Felipe Pena

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to