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 <
[hidden email]>
Corporate Smalltalk Consulting Ltd.
http://www.smalltalkconsulting.com=
=
=
========================================================================