AccelerationNet / access

A common lisp library to unify access to common dictionary-like data-structures
Other
84 stars 12 forks source link

Major failing of access with new SBCL version 1.1.14 #2

Closed mackram closed 10 years ago

mackram commented 10 years ago

Dear All,

In the new version of SBCL the access library no longer works properly. This issue could have come from versions after 1.1.10.

Description of the problem

%slot-readers currently attempts to find the reader-name by oring the first of (closer-mop::slot-definition-readers slot)) and (closer-mop:slot-definition-name slot) [this is line 136 in access.lisp].

The first call is where the problem resides and is mainly due to the fact that effective-slot-definitions no longer seem to have a readers slot to look into. Unfortunately the only calls to %slot-readers seem to indicate explicitly the user of effective-slot-definitions which is causing the error through the call to class-slot-readers.

Note that trying the code with class-direct-slot-readers actually works properly. However this function is only referenced and called by itself.

PS. I have tested this with objects that are clsql objects I dont believe this should cause any issues but that is info if you need it

bobbysmith007 commented 10 years ago

Thanks for the bug report and I am sorry for the troubles.

I pushed a patch that seems reasonable to me, but if you think not I can move ahead with a more aggressive strategy of collecting all the direct slot definitions and grabbing the reader from them.