Re: hasType() for internal function parameters?

From: Date: Sun, 21 Jun 2015 21:57:32 +0000
Subject: Re: hasType() for internal function parameters?
References: 1 2 3 4  Groups: php.internals 
Request: Send a blank email to internals+get-86772@lists.php.net to get a copy of this message
On 06/21/2015 03:40 PM, Kalle Sommer Nielsen wrote: > Hi > > 2015-06-21 20:58 GMT+02:00 Rasmus Lerdorf <rasmus@lerdorf.com>: >> Or we bite the bullet and fix the arginfo everywhere to make it >> consistent. It wouldn't be that hard to write a script to generate the >> bulk of it. > > I think fixing arginfo sounds like the right solution, writing a > script for it should not be so trival. Even the ones that have some arginfo aren't all correct. For example: https://github.com/php/php-src/blob/master/Zend/zend_builtin_functions.c#L132 which currently says: ZEND_BEGIN_ARG_INFO_EX(arginfo_define, 0, 0, 3) ZEND_ARG_INFO(0, constant_name) ZEND_ARG_INFO(0, value) ZEND_ARG_INFO(0, case_insensitive) ZEND_END_ARG_INFO() That says there are 3 required params when it should clearly be 2. But really that block should be: ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_define, 0, 2, _IS_BOOL, 0, 0) ZEND_ARG_TYPE_INFO(0, constant_name, IS_STRING, 0) ZEND_ARG_INFO(0, value) ZEND_ARG_TYPE_INFO(0, case_insensitive, _IS_BOOL, 0) ZEND_END_ARG_INFO() It seems way too lazy to not fix these before we release 7.0. Especially the ones that are outright wrong. So, having called us lazy, I better dig in and do something about it. I'll fix up all of the ones in zend_builtin_functions.c today. And move on to others after. Definitely a tedious task that we could use some extra hands on. -Rasmus

Attachment: [application/pgp-signature] OpenPGP digital signature signature.asc
« previous php.internals (#86772) next »