The opaque: flag causes a change in the behavior of equal? and equal?-hash .  When the opaque: flag is not used, two structures are equal? if they have the same type and each field is equal? in both structures.  When the opaque: flag is used, two structures are equal? only if they are eq? (i.e. the same instance).


 
Awesome and very useful!
So the code that checks for the opaque: flag in the Gambit sources is found in the equal? and equal-hash? definitions...

Thank you, Marc