summaryrefslogtreecommitdiff
path: root/compiler
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2012-10-02 08:31:31 +0100
committerSimon Peyton Jones <simonpj@microsoft.com>2012-10-02 08:31:31 +0100
commit522a1552d0546458bb1c0ff7052175606ac36d99 (patch)
treeca3d8bfb0b6a719c52e40bd126cdbb7ea9372539 /compiler
parentfd3bd41705b52b17f1cf2f46d8a5b356a6ca592f (diff)
downloadhaskell-522a1552d0546458bb1c0ff7052175606ac36d99.tar.gz
Comments, and unused import
Diffstat (limited to 'compiler')
-rw-r--r--compiler/typecheck/FamInst.lhs1
-rw-r--r--compiler/typecheck/TcEvidence.lhs9
2 files changed, 5 insertions, 5 deletions
diff --git a/compiler/typecheck/FamInst.lhs b/compiler/typecheck/FamInst.lhs
index 27588901e7..45ef02657e 100644
--- a/compiler/typecheck/FamInst.lhs
+++ b/compiler/typecheck/FamInst.lhs
@@ -26,7 +26,6 @@ import Name
import Module
import Outputable
import UniqFM
-import VarSet
import FastString
import Util
import Maybes
diff --git a/compiler/typecheck/TcEvidence.lhs b/compiler/typecheck/TcEvidence.lhs
index 0c31bc0c3d..b160c3282c 100644
--- a/compiler/typecheck/TcEvidence.lhs
+++ b/compiler/typecheck/TcEvidence.lhs
@@ -508,16 +508,17 @@ We do quite often need to get a TcCoercion from an EvTerm; see
INVARIANT: The evidence for any constraint with type (t1~t2) is
a coercion evidence term. Consider for example
- [G] g :: F Int a
+ [G] d :: F Int a
If we have
ax7 a :: F Int a ~ (a ~ Bool)
then we do NOT generate the constraint
- [G} (g |> ax7 a) :: a ~ Bool
-because that does not satisfy the invariant. Instead we make a binding
+ [G} (d |> ax7 a) :: a ~ Bool
+because that does not satisfy the invariant (d is not a coercion variable).
+Instead we make a binding
g1 :: a~Bool = g |> ax7 a
and the constraint
[G] g1 :: a~Bool
-See Trac [7238]
+See Trac [7238] and Note [Bind new Givens immediately] in TcSMonad
Note [EvBinds/EvTerm]
~~~~~~~~~~~~~~~~~~~~~