<div dir="ltr">Hey Cafe,<br><br>With the advent of RecordDotSyntax (or more precisely OverloadedRecordDot?) in 9.2, I was expecting this wart to be fixed:<br><br>data Ty<br>  = X {x :: String}<br>  | Y {y :: Int}<br><br>> y $ X "lol"<br>*** Exception: No match in record selector y<br><br>As it seems like the perfect opportunity to introduce a breaking change for a behaviour that is usually undesirable (in my experience).<br><br>But instead:<br><br>> :set -XOverloadedRecordDot<br>> (X "lol").y<br>*** Exception: No match in record selector y<br><br>Unfortunately, I couldn't follow and/or remember all of the discussion around RecordDotSyntax, so this might be something I missed.<br><br>Is there a reason why we don't generate HasField x r a only when all of the constructors for r have a field "x" :: a? If not, is the community open to changing this, while the new extension is still ripe?<br><br>Cheers!<br><br>=======<br>Georgi</div>