<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class="">[Proposal: <a href="https://github.com/apple/swift-evolution/blob/master/proposals/0185-synthesize-equatable-hashable.md" class="">https://github.com/apple/swift-evolution/blob/master/proposals/0185-synthesize-equatable-hashable.md</a>]</div><div class=""><br class=""></div>Hi, Tony. Glad to see this back again!<div class=""><br class=""></div><div class="">Overall I'm an enthusiastic +1. The restrictions and future work you've listed make sense, and I think this is the right starting place. I just have one thing I'd want to clarify:</div><div class=""><br class=""></div><div class=""><blockquote type="cite" class="">Any user-provided implementations of&nbsp;==&nbsp;or&nbsp;hashValue&nbsp;will override the default implementations that would be&nbsp;provided by the compiler.<br class=""></blockquote><br class="">Does this include implementations in (possibly constrained) protocol extensions? I assume yes, but that's probably worth calling out explicitly. Still, it could be confusing to some users.<br class=""></div><div class=""><br class=""></div><div class="">Jordan</div></body></html>