summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_compile/tc158.hs
diff options
context:
space:
mode:
authorRichard Eisenberg <eir@cis.upenn.edu>2016-01-13 23:29:17 -0500
committerRichard Eisenberg <eir@cis.upenn.edu>2016-01-26 23:33:26 -0500
commitf338ce60cde1b9e63747cc240f635fe7bf50059a (patch)
tree8c6c4c3834851dde04350fac059b19ed6dd08677 /testsuite/tests/typecheck/should_compile/tc158.hs
parent919597def355708e6fa88d4d43f55e7fd693cec3 (diff)
downloadhaskell-f338ce60cde1b9e63747cc240f635fe7bf50059a.tar.gz
Refactor the typechecker to use ExpTypes.wip/exp-types
The idea here is described in [wiki:Typechecker]. Briefly, this refactor keeps solid track of "synthesis" mode vs "checking" in GHC's bidirectional type-checking algorithm. When in synthesis mode, the expected type is just an IORef to write to. In addition, this patch does a significant reworking of RebindableSyntax, allowing much more freedom in the types of the rebindable operators. For example, we can now have `negate :: Int -> Bool` and `(>>=) :: m a -> (forall x. a x -> m b) -> m b`. The magic is in tcSyntaxOp. This addresses tickets #11397, #11452, and #11458. Tests: typecheck/should_compile/{RebindHR,RebindNegate,T11397,T11458} th/T11452
Diffstat (limited to 'testsuite/tests/typecheck/should_compile/tc158.hs')
-rw-r--r--testsuite/tests/typecheck/should_compile/tc158.hs2
1 files changed, 1 insertions, 1 deletions
diff --git a/testsuite/tests/typecheck/should_compile/tc158.hs b/testsuite/tests/typecheck/should_compile/tc158.hs
index 1e8b661d10..25879b067d 100644
--- a/testsuite/tests/typecheck/should_compile/tc158.hs
+++ b/testsuite/tests/typecheck/should_compile/tc158.hs
@@ -9,4 +9,4 @@ type All u = forall x. x->u
type All' u = u -> All u
all1 :: All u -> (u -> All u) -> All u
-all1 = undefined
+all1 _ _ = undefined