diff options
Diffstat (limited to 'html-test/src')
| -rw-r--r-- | html-test/src/Instances.hs | 18 | 
1 files changed, 18 insertions, 0 deletions
| diff --git a/html-test/src/Instances.hs b/html-test/src/Instances.hs index d0d68dc3..8e237fe7 100644 --- a/html-test/src/Instances.hs +++ b/html-test/src/Instances.hs @@ -1,6 +1,7 @@  {-# LANGUAGE MultiParamTypeClasses #-}  {-# LANGUAGE FlexibleInstances #-}  {-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE ImpredicativeTypes #-}  module Instances where @@ -34,3 +35,20 @@ instance Bar Maybe [a]  instance Bar [] (a, a)  instance Foo f => Bar (Either a) (f a)  instance Foo ((,,) a b) => Bar ((,,) a b) (a, b, a) + + +class Baz a where + +	baz :: a -> (forall a. a -> a) -> (b, forall c. c -> a) -> (b, c) +	baz' :: b -> (forall b. b -> a) -> (forall b. b -> a) -> [(b, a)] +	baz'' :: b -> (forall b. (forall b. b -> a) -> c) -> (forall c. c -> b) + +	baz = undefined +	baz' = undefined +	baz'' = undefined + + +instance Baz (a -> b) +instance Baz [c] +instance Baz (a, b, c) +instance Baz (a, [b], b, a) | 
