summaryrefslogtreecommitdiff
path: root/compiler
diff options
context:
space:
mode:
authorsimonpj@microsoft.com <unknown>2011-01-13 09:39:31 +0000
committersimonpj@microsoft.com <unknown>2011-01-13 09:39:31 +0000
commit5882c5ff503c5b3b425708621cbc3371cc36e5de (patch)
tree35b38ff57a7d1d9c7a723955eb9293694f72217c /compiler
parent024aa13a0a6bfd2d68f4c551824357b87e732f5b (diff)
downloadhaskell-5882c5ff503c5b3b425708621cbc3371cc36e5de.tar.gz
White space only
Diffstat (limited to 'compiler')
-rw-r--r--compiler/typecheck/TcRnTypes.lhs2
-rw-r--r--compiler/typecheck/TcSimplify.lhs5
2 files changed, 6 insertions, 1 deletions
diff --git a/compiler/typecheck/TcRnTypes.lhs b/compiler/typecheck/TcRnTypes.lhs
index fc781df615..dc7bf5e1ec 100644
--- a/compiler/typecheck/TcRnTypes.lhs
+++ b/compiler/typecheck/TcRnTypes.lhs
@@ -792,7 +792,7 @@ data Implication
-- which is also the location of all the
-- given evidence variables
- ic_wanted :: WantedConstraints, -- The wanted
+ ic_wanted :: WantedConstraints, -- The wanted
ic_insol :: Bool, -- True iff insolubleWC ic_wantted is true
ic_binds :: EvBindsVar -- Points to the place to fill in the
diff --git a/compiler/typecheck/TcSimplify.lhs b/compiler/typecheck/TcSimplify.lhs
index 197d6820b0..e25f51015f 100644
--- a/compiler/typecheck/TcSimplify.lhs
+++ b/compiler/typecheck/TcSimplify.lhs
@@ -642,6 +642,11 @@ solve_wanteds inert wanted@(WC { wc_flat = flats, wc_impl = implics, wc_insol =
= do { traceTcS "solveWanteds {" (ppr wanted)
-- Try the flat bit
+ -- Discard from insols all the derived/given constraints
+ -- because they will show up again when we try to solve
+ -- everything else. Solving them a second time is a bit
+ -- of a waste, but the code is simple, and the program is
+ -- wrong anyway!
; let all_flats = flats `unionBags` keepWanted insols
; inert1 <- solveInteractWanted inert (bagToList all_flats)