Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

Commit [c55397] Maximize Restore History

1.0.8.44: Fix EQUALP on structures with raw slots

* Old version was basically accessing raw slots with %INSTANCE-REF,
and doing EQUALP on the results. This was most obviously wrong
for raw slots that were larger than a word (double-floats on 32-bit
platforms). Less obviously this is also wrong for some float
corner-cases, like negative zeroes.
* Add RAW-INSTANCE-SLOTS-EQUALP which instead grovels the layout for
the slot definitions and determines the proper accessor functions
for each slot from that.
* Reported by Vjacheslav Fyodorov.

Juho Snellman Juho Snellman 2007-08-21

changed src/code/pred.lisp
changed src/code/target-defstruct.lisp
changed tests/defstruct.impure.lisp
changed NEWS
changed package-data-list.lisp-expr
changed version.lisp-expr
src/code/pred.lisp Diff Switch to side-by-side view
Loading...
src/code/target-defstruct.lisp Diff Switch to side-by-side view
Loading...
tests/defstruct.impure.lisp Diff Switch to side-by-side view
Loading...
NEWS Diff Switch to side-by-side view
Loading...
package-data-list.lisp-expr Diff Switch to side-by-side view
Loading...
version.lisp-expr Diff Switch to side-by-side view
Loading...