summaryrefslogtreecommitdiff
path: root/testsuite/tests/quantified-constraints/T14835.hs
blob: de9b450b7c21b5c9bba83e9a1516e413a6a54df9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE QuantifiedConstraints #-}
{-# LANGUAGE UndecidableInstances #-}
module Bug where

data Dict c where
  Dict :: c => Dict c

class    (a => b) => Implies a b
instance (a => b) => Implies a b

curryC1 :: ((a, b) => c) => Dict (Implies a (Implies b c))
curryC1 = Dict

curryC2 :: Implies (a, b) c => Dict (Implies a (Implies b c))
curryC2 = Dict