Test Trac #10753
authorSimon Peyton Jones <simonpj@microsoft.com>
Fri, 7 Aug 2015 11:32:09 +0000 (12:32 +0100)
committerSimon Peyton Jones <simonpj@microsoft.com>
Fri, 7 Aug 2015 11:34:11 +0000 (12:34 +0100)
testsuite/tests/indexed-types/should_compile/T10753.hs [new file with mode: 0644]
testsuite/tests/indexed-types/should_compile/all.T

diff --git a/testsuite/tests/indexed-types/should_compile/T10753.hs b/testsuite/tests/indexed-types/should_compile/T10753.hs
new file mode 100644 (file)
index 0000000..6939ce1
--- /dev/null
@@ -0,0 +1,23 @@
+{-# LANGUAGE TypeFamilies, MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances #-}
+{-# LANGUAGE KindSignatures #-}
+{-# OPTIONS_GHC -fno-warn-redundant-constraints -fno-warn-missing-methods #-}
+module T10753 where
+
+
+class MonadState s m | m -> s where
+  get :: m s
+
+newtype StateT s m a = StateT { runStateT :: s -> m (a,s) }
+instance (Monad m) => Monad (StateT s m) where
+instance (Functor m, Monad m) => Applicative (StateT s m) where
+instance (Functor m) => Functor (StateT s m) where
+
+instance (Monad m) => MonadState s (StateT s m) where
+
+class HasConns (m :: * -> *) where
+    type Conn m
+
+foo :: (Monad m) => StateT (Conn m) m ()
+foo =
+    do _ <- get
+       return ()
index ff5070b..7bbb04b 100644 (file)
@@ -261,3 +261,5 @@ test('T10226', normal, compile, [''])
 test('T10507', normal, compile, [''])
 test('T10634', normal, compile, [''])
 test('T10713', normal, compile, [''])
+test('T10753', normal, compile, [''])
+