[commit: ghc] master: Comments only (2d0e1db)
git at git.haskell.org
git at git.haskell.org
Wed Nov 18 15:57:25 UTC 2015
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/2d0e1db3e5d6400b50d349ec1fedc328c35c1af1/ghc
>---------------------------------------------------------------
commit 2d0e1db3e5d6400b50d349ec1fedc328c35c1af1
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Mon Nov 9 09:38:53 2015 +0000
Comments only
>---------------------------------------------------------------
2d0e1db3e5d6400b50d349ec1fedc328c35c1af1
compiler/typecheck/TcInteract.hs | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/compiler/typecheck/TcInteract.hs b/compiler/typecheck/TcInteract.hs
index 47147d7..180ddd3 100644
--- a/compiler/typecheck/TcInteract.hs
+++ b/compiler/typecheck/TcInteract.hs
@@ -602,12 +602,13 @@ we keep? More subtle than you might think!
See Note [Solving superclass constraints] in TcInstDcls
- Keep the one that has a non-trivial evidence binding.
- Note [Tracking redundant constraints] again.
Example: f :: (Eq a, Ord a) => blah
- then we may find [G] sc_sel (d1::Ord a) :: Eq a
+ then we may find [G] d3 :: Eq a
[G] d2 :: Eq a
+ with bindings d3 = sc_sel (d1::Ord a)
We want to discard d2 in favour of the superclass selection from
the Ord dictionary.
+ Why? See Note [Tracking redundant constraints] in TcSimplify again.
* Finally, when there is still a choice, use IRKeep rather than
IRReplace, to avoid unnecessary munging of the inert set.
More information about the ghc-commits
mailing list