On 24 November 2015 at 17:16, Andrea Faulds <a...@ajf.me> wrote:

> Hi Stas,
>
> Stanislav Malyshev wrote:
>
>> Hi!
>>
>>        <?php
>>>>        function a(\int $i) {}
>>>>
>>>>    Is it intentional that the \ in front of the "int" is allowed? IMHO,
>>>> this
>>>>    confusing notation must not be allowed.
>>>>
>>>
>>> This is weird and I'd consider it a bug. You can't do \array or
>>> \callable, and if I saw \int, I'd think it meant a class of that name
>>> rather than a scalar type.
>>>
>>
>> I would assume \int means class named "int", as opposed to "int" type.
>>
>
> That's also what I'd expect. However, "int" is not allowed as a class name
> in PHP 7. And unfortunately what the code Sebastian posted sctually does is
> act as an integer type hint, not as a class type hint.
>
> Can this be fixed for 7.0.0?
>>>
>>
>> I don't think this would be a good idea. We're in the final stretch of
>> release cycle, and should not do any non-urgent fixes. This does not
>> look urgent. It can wait for 7.0.1.
>>
>
> It can't wait for 7.0.1, because banning this would be a
> backwards-compatibility break with 7.0.0. We have to fix it in 7.0.0 or not
> fix it ever.
>
> Thanks.
>
> --
> Andrea Faulds
> http://ajf.me/
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
Could we not just document it as \int is not allowed and throws a fatal
error. Then we'd just be fixing a bug in documented behaviour.

~C

Reply via email to