-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
int check in checked mode is problematic #3720
Comments
The new fixnum library is failing a unit test in checked mode. The problem is code like this: int x = 2147483648; |
It's actually even worse than not working for integers outside the 32-bit range. All our bitwise operations produce unsigned 32-bit results and our int type checks fail for unsigned integers outside the 31-bit range. The reason is that we use code like this to check for it: if (i !== (i | 0)) ... and i | 0 forces a conversion to a signed 32-bit integer. cc @floitschG. |
Issue #4437 has been merged into this issue. |
Related (potentially duplicate): issue #3814 |
Issue #4437 has been merged into this issue. |
Our int check in checked mode doesn't work for integers outside the 32bit range.
The text was updated successfully, but these errors were encountered: