Unwanted style-warning when slot symbol-names collide

Bug #1943559 reported by Michael Fiano
This bug affects 2 people
Affects Status Importance Assigned to Milestone

Bug Description

When any effective slots of a defined class have the same symbol names, a style warning is currently emitted. As discussed on IRC, myself and a few others agree this conflicts with the idea of modularity; in order for a user to muffle this warning, they must know of implementation details of the library in question, because most of the time, that is exactly what slots should be treated as, with the user-facing API employed with accessors. The warning is especially common with mixin class creating usages of the metaobject protocol, such as "stealth-mixin" and "dynamic-mixins" (quicklisp-available projects).

Krystof thinks it's possible that such a warning should only be emitted when the name being inherited is part of a public API (i.e. exported from some package).

description: updated
Revision history for this message
Christophe Rhodes (csr21-cantab) wrote :

Please try the attached and see if it works for you? Thanks for the report!

Revision history for this message
Michael Fiano (michael-fiano) wrote :

That patch seems to address the issue for me. Thanks!

Revision history for this message
Paul F. Dietz (paul-f-dietz) wrote :

I have also experienced this issue.

Revision history for this message
Christophe Rhodes (csr21-cantab) wrote :

Thanks, I committed the patch. Let's see how it goes!

Changed in sbcl:
status: New → Fix Committed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers