Summary

coops record-printer for instances do not work

Metadata

Description

As reported on IRC by matijja, coops’ record printer for class instances does not work.

http://paste.call-cc.org/paste?id=c0e12d0a9d9bbd2e513fe88092f38be9e7afb6c3

While redefining a record printer for it makes everything work as expected:

http://paste.call-cc.org/paste?id=4e21716d788acd4c207a5a1ee14e11fa8cfd952e

From what I could gather, coops uses the record-variant egg to define its `coops-instance` record type.

It appears the egg has not been updated to add the new module prefix of the record symbol, so it registers the record type as just being `coops-instance`, while the `define-record-printer` macro correctly adds the module prefix, making them distinct from each other, the printer is then never used.

If we update the record-variant egg, we also would have to update coops, because it uses `##sys#check-structure` directly.

Changes and comments

[2019-05-29 21:22:41 UTC] sjamaan changed milestone from someday to 5.1

[2019-05-29 21:22:41 UTC] sjamaan wrote:

Moving to 5.1, as it's related to #1581

[2019-06-06 10:14:05 UTC] felix changed status from new to closed

[2019-06-06 10:14:05 UTC] felix set resolution to fixed

[2019-06-06 10:14:05 UTC] felix wrote:

Should be fixed with the changes pushed with from #1581.