marcoheisig / fast-generic-functions

Seal your generic functions for an extra boost in performance.
MIT License
94 stars 5 forks source link

Error on loading since sbcl 2.4.0 (and warnings in 2.3.3) #15

Open ajberkley opened 6 months ago

ajberkley commented 6 months ago

In code/sbcl.lisp, you need &rest t in the deftransform, not &rest * or you get a WARNING at compile time for sbcl 2.3.3 (I'm not sure when the change occurred).

More importantly, since sbcl 2.4.0 sb-pcl::%no-primary-method has disappeared and fast-generic-functions does not load anymore.

See https://github.com/sbcl/sbcl/commit/347df80ac49274addb8bff6b9547520f06f8308b for the change.

I think it is sufficient to only install %no-primary-method if the symbol sb-pcl::%no-primary-method exists, but I haven't read through this carefully or understood what it is trying to do.

If you are still around maintaining this package, I can create a PR for the changes (so far I haven't seen any response to the issues that mention this from Jan of this year).

Thank you!

ajberkley commented 5 months ago

See PR #16 for a fix that works for me for at least sbcl 2.3.x and 2.4.x