[squeak-dev] [BUG] signedLongAt: 1 put:−2,147,483,648
John M McIntosh
johnmci at smalltalkconsulting.com
Wed Nov 26 07:15:32 UTC 2008
I noted the the current VMs don't handle the case of storing
−2,147,483,648 (primitive failure) via signed32BitValueOf: usually
called via FFI signedLongAt:put:
For plugin writers who used signed64BitValueOf: (primitive failure)
and signed64BitIntegerFor: returned zero if passed
−9,223,372,036,854,775,808.
signed64BitIntegerFor: is the one that is nasty since your value of
0x8000000000000000 silently turns in 0.
I reopened problem http://bugs.squeak.org/view.php?id=6987 and wrote
some SUnits.
I also provided a suggested fix, which allows me to run the SUnits.
Lastly for Alien I added long long (signed/unsigned) support which is
still missing in the FFI plugin so I could do some testing.
--
=
=
=
========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com>
Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
=
=
=
========================================================================
More information about the Squeak-dev
mailing list
|