From: [EMAIL PROTECTED] Operating system: linux rh6.2 PHP version: 4.0.4pl1 PHP Bug Type: *General Issues Bug description: weird intval() and settype('integer') behaviour: loosing bits? hello, take a look at this script: ----->8-------->8-------->8-------->8-------->8--- // these are min and max signed 32bits integers $x = -2147483648; // 0x80000000 $y = 2147483647; // 0x7FFFFFFF echo 'x = '.$x.'<br>'; echo 'y = '.$y.'<br>'; if($x > $y) echo 'x > y'; else echo 'x <= y'; echo '<br>'; $x = intval($x); echo 'x = intval(x)<br>'; $y = intval($y); echo 'y = intval(y)<br>'; echo 'x = '.$x.'<br>'; echo 'y = '.$y.'<br>'; if($x > $y) echo 'x > y'; else echo 'x <= y'; echo '<br>'; ----->8-------->8-------->8-------->8-------->8--- it displays this in php3* and 4*: x = -2147483648 y = 2147483647 x <= y x = intval(x) y = intval(y) x = -2147483648 y = 2147483647 x > y the same thing will happen if intval(var) is replaced by settype(var, 'integer') thanks -- vedad -- Edit Bug report at: http://bugs.php.net/?id=10288&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]