1.0.38.9: Integer callback result fixes.
authorAlastair Bridgewater <lisphacker@users.sourceforge.net>
Fri, 21 May 2010 01:03:25 +0000 (01:03 +0000)
committerAlastair Bridgewater <lisphacker@users.sourceforge.net>
Fri, 21 May 2010 01:03:25 +0000 (01:03 +0000)
commit511f4325a18532f48f8c6f99e0a63862b7b25aed
tree8ccb8dc677929e9d7fd0256e8e7de58491da4005
parent6e4a6b4ccbc0608f29aad507ee20a3de1356b75a
1.0.38.9: Integer callback result fixes.

  * Callback results should be typechecked based on their declared
type, but stored as if they were the full width of a machine register.

  * Fixed sb-alien::alien-callback-lisp-wrapper-lambda to make this
happen properly.

  * Updated corresponding tests (formerly callback.impure.lisp /
sign-extension and underflow-detection) to cover 16-bit cases, which
would have broken on all targets, not merely 64-bit targets.

  * As a minor side note, assistance in testing the changes in 1.0.38.8
was provided by one Andreas Selfjord Eriksen, but I forgot to note this
fact in the commit message.  Mea Culpa.
src/code/target-alieneval.lisp
tests/callback.impure.lisp
version.lisp-expr