On 24.08.2016 at 18:45, Nikita Popov wrote:

> On Aug 24, 2016 9:55 AM, "Davey Shafik" <da...@php.net> wrote:
>>
>> Given this thread: http://externals.io/thread/233
>>
>> I'm not happy with the state of this going into RC1 next week, and without
>> changes (such as the patch I provided), I would like to revert this change
>> and leave it for 7.2.
>>
>> My patch will _retain_ BC for internal functions with non strict_types
>> (except for the error message, which can be reconciled), and for functions
>> that previously threw a TypeError, ArgumentCountError is a subclass so BC
>> is preserved there also.
>>
>> The issue is that the array functions that do this argument count checking
>> themselves and still issue a warning, regardless of strict_types.
>>
>> We can leave the original behavior for array functions, but they then
>> differ from other internals functions.
>>
>> It is a BC break for userland functions (as per the RFC), throwing an
>> ArgumentCountError regardless of strict_types.
>>
>> At this point, we _must_ come to consensus by Monday to get it into RC1
> (if
>> there are changes needed) or we should remove it from 7.1. Also, I would
>> like someone more experienced to review my patch.
> 
> I have some trouble understanding what the issue is here. The mentioned RFC
> affects only userland functions, so the non-standard behavior of some array
> functions shouldn't matter.
> 
> Personally I am entirely indifferent as to what exception gets thrown when
> too little arguments are passed -- this is a type of error that should not
> be caught by anything but catch-all handlers.
> 
> Inability to provide a more specific exception should not be a blocker for
> this, especially as this is beyond the scope of the original RFC.

Indeed, the RFC explicitly claims:

| Behavior of internal functions is not going to be changed.

The RFC has been accepted, so I don't see a reason to revert the
respective changes (even though I'm still not happy with this change
happening in a minor version).

-- 
Christoph M. Becker

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

Reply via email to