On Fri, Apr 3, 2015 at 10:10 PM, Andrea Faulds <a...@ajf.me> wrote:

> Hi Dmitry,
>
> > On 3 Apr 2015, at 20:04, Dmitry Stogov <dmi...@zend.com> wrote:
> >
> > 2) Very similar weird behavior was introduced for shift with negative
> offsets. I also propose to change it in the same way (Fatal error at
> compile-time, Exception in run-time).
> >
> > Any thoughts? objections?
>
> For consistency with IEEE 754, shouldn't we produce INF on a division by
> zero, at least for floats (but probably integers too because of weak
> typing)? I don't think producing a warning is an issue, but FALSE isn't the
> right value to produce.
>

INF is definitely better than FALSE :)


>
> However there should be a compile-time solution. Maybe, if a division by
> zero happens, don't evaluate the expression at compile-time?
>

Yes. This should be possible.

Keeping WARNING, returning INF and preventing compile-time evaluation is a
consistent solution for me.

May be you'll also suggest something regarding bitwise shifts with negative
offset?
Allowing negative offsets using opposite directions would fix
inconsistency, but I remember, you didn't like it.
May be keep WARNING (Bit shift by negative number) and then perform shift
in another direction?
+ disable negative shifts at compile-time.

Thanks. Dmitry.


>
> Thanks.
>
> --
> Andrea Faulds
> http://ajf.me/

Reply via email to