On 16 Sep 2014, at 10:16, Dmitry Stogov <dmi...@zend.com> wrote: > Shifts by negative number may make sense. (N << -1) => (N >> 1) > At least receiving "false" from shift is not very pleasant.
The problem is that changing from the current behaviour (undefined in C, but typically a shift by (PHP_INT_MAX - $bits)) to do what you’d expect (shift in the opposite direction) would be a silent BC break. I think it’s better to just stop it altogether and raise an E_WARNING, where it’s at least obvious something went wrong, than change this behaviour silently. > In the patch you use SIZEOF_LONG. It probably should be changed to > SIZEOF_ZEND_LONG. Will fix, thanks for spotting that. -- Andrea Faulds http://ajf.me/ -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php