diff options
Diffstat (limited to 'testsuite/tests/typecheck/should_compile/T21703.hs')
-rw-r--r-- | testsuite/tests/typecheck/should_compile/T21703.hs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/testsuite/tests/typecheck/should_compile/T21703.hs b/testsuite/tests/typecheck/should_compile/T21703.hs new file mode 100644 index 0000000000..352dbc72a2 --- /dev/null +++ b/testsuite/tests/typecheck/should_compile/T21703.hs @@ -0,0 +1,22 @@ +{-# LANGUAGE FunctionalDependencies #-} +{-# LANGUAGE UndecidableInstances #-} + +module T21703 where + +data Doc +data Val +data Head + +data EvalM a = EvalM a + +class MonadEval head val m | m -> head, head -> val where + ret :: a -> m a + +instance MonadEval Head Val EvalM where + ret = EvalM + +class PrettyM m a where + prettyM :: a -> m a + +instance PrettyM EvalM Val where + prettyM = ret |