Repository : ssh://darcs.haskell.org//srv/darcs/testsuite

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/ac55c8f86bfd32490df49a676325934d65051e4b

>---------------------------------------------------------------

commit ac55c8f86bfd32490df49a676325934d65051e4b
Author: Simon Peyton Jones <[email protected]>
Date:   Wed Nov 30 02:27:38 2011 +0000

    Test Trac #5001

>---------------------------------------------------------------

 tests/deSugar/should_compile/T5001.hs  |   10 ++++++++++
 tests/deSugar/should_compile/T5001a.hs |   16 ++++++++++++++++
 tests/deSugar/should_compile/all.T     |    6 ++++++
 3 files changed, 32 insertions(+), 0 deletions(-)

diff --git a/tests/deSugar/should_compile/T5001.hs 
b/tests/deSugar/should_compile/T5001.hs
new file mode 100644
index 0000000..3b644cd
--- /dev/null
+++ b/tests/deSugar/should_compile/T5001.hs
@@ -0,0 +1,10 @@
+{-# LANGUAGE MultiParamTypeClasses #-}
+
+module T5001 where
+
+import T5001a
+
+data T = T
+
+instance Comorphism Float Int Char T
+
diff --git a/tests/deSugar/should_compile/T5001a.hs 
b/tests/deSugar/should_compile/T5001a.hs
new file mode 100644
index 0000000..08c245c
--- /dev/null
+++ b/tests/deSugar/should_compile/T5001a.hs
@@ -0,0 +1,16 @@
+{-# LANGUAGE MultiParamTypeClasses #-}
+
+module T5001a (Comorphism(..)) where
+
+class Show a => Comorphism a b c d where
+    map_sentence :: a -> b -> c -> Result d
+    map_sentence = f
+
+f :: Comorphism a b c d => a -> b -> c -> Result d
+f x _ _ = fatal_error ("Unsupported sentence translation " ++ show x)
+
+data Result a = Result String
+
+fatal_error :: String -> Result a
+fatal_error s = Result s
+
diff --git a/tests/deSugar/should_compile/all.T 
b/tests/deSugar/should_compile/all.T
index 40a4c24..35d5325 100644
--- a/tests/deSugar/should_compile/all.T
+++ b/tests/deSugar/should_compile/all.T
@@ -89,3 +89,9 @@ test('T5252',
      run_command, 
      ['$MAKE -s --no-print-directory T5252'])
 test('T5455', normal, compile, [''])
+test('T5001',
+     [only_ways(['optasm']),
+      only_compiler_types(['ghc']),
+      extra_clean(['T5001a.hi', 'T5001a.o'])],
+     multimod_compile,
+     ['T5001', '-v0'])



_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to