Comments only
authorSimon Peyton Jones <simonpj@microsoft.com>
Fri, 1 May 2015 14:51:10 +0000 (15:51 +0100)
committerSimon Peyton Jones <simonpj@microsoft.com>
Thu, 7 May 2015 08:10:14 +0000 (09:10 +0100)
compiler/typecheck/TcFlatten.hs

index 4c74ba9..09ed340 100644 (file)
@@ -1576,6 +1576,11 @@ Consider f1 = (Given, ReprEq)
          f2 = (Derived, NomEq)
           f = (Derived, ReprEq)
 
+I thought maybe we could never get Derived ReprEq constraints, but
+we can; straight from the Wanteds during improvment. And from a Derived
+ReprEq we could conceivably get a Derived NomEq improvment (by decomposing
+a type constructor with Nomninal role), and hence unify.
+
 Note [canRewriteOrSame]
 ~~~~~~~~~~~~~~~~~~~~~~~
 canRewriteOrSame is similar but