summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoachim Breitner <mail@joachim-breitner.de>2014-07-22 14:24:21 +0200
committerJoachim Breitner <mail@joachim-breitner.de>2014-07-22 14:24:21 +0200
commit3630c2bdcbe34a3ac92f5555bee9ef2a2226512d (patch)
treec27e4abcec343491f06768292d8444cca95e80a0
parent98a6e277d100021580a4a7ee75fe2d30572e03db (diff)
downloadhaskell-wip/T9156.tar.gz
Add a type signature to hsConDeclsBinders’s gowip/T9156
-rw-r--r--compiler/hsSyn/HsUtils.lhs7
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/hsSyn/HsUtils.lhs b/compiler/hsSyn/HsUtils.lhs
index 38d340c359..e12daf45cc 100644
--- a/compiler/hsSyn/HsUtils.lhs
+++ b/compiler/hsSyn/HsUtils.lhs
@@ -1,3 +1,5 @@
+> {-# LANGUAGE ScopedTypeVariables #-}
+
%
% (c) The University of Glasgow, 1992-2006
%
@@ -746,12 +748,13 @@ hsDataDefnBinders (HsDataDefn { dd_cons = cons }) = hsConDeclsBinders cons
-- See Note [Binders in family instances]
-------------------
-hsConDeclsBinders :: (Eq name) => [LConDecl name] -> [Located name]
+hsConDeclsBinders :: forall name. (Eq name) => [LConDecl name] -> [Located name]
-- See hsLTyClDeclBinders for what this does
-- The function is boringly complicated because of the records
-- And since we only have equality, we have to be a little careful
hsConDeclsBinders cons = go id cons
- where go _ [] = []
+ where go :: ([Located name] -> [Located name]) -> [LConDecl name] -> [Located name]
+ go _ [] = []
go remSeen (r:rs) =
-- don't re-mangle the location of field names, because we don't
-- have a record of the full location of the field declaration anyway