[project @ 1999-01-23 17:57:35 by sof]
authorsof <unknown>
Sat, 23 Jan 1999 17:59:06 +0000 (17:59 +0000)
committersof <unknown>
Sat, 23 Jan 1999 17:59:06 +0000 (17:59 +0000)
Updated for H98

213 files changed:
ghc/tests/typecheck/should_compile/TheUtils.hi
ghc/tests/typecheck/should_compile/tc001.stderr
ghc/tests/typecheck/should_compile/tc002.stderr
ghc/tests/typecheck/should_compile/tc003.stderr
ghc/tests/typecheck/should_compile/tc004.stderr
ghc/tests/typecheck/should_compile/tc005.stderr
ghc/tests/typecheck/should_compile/tc006.stderr
ghc/tests/typecheck/should_compile/tc007.stderr
ghc/tests/typecheck/should_compile/tc008.stderr
ghc/tests/typecheck/should_compile/tc009.stderr
ghc/tests/typecheck/should_compile/tc010.stderr
ghc/tests/typecheck/should_compile/tc011.stderr
ghc/tests/typecheck/should_compile/tc012.stderr
ghc/tests/typecheck/should_compile/tc013.stderr
ghc/tests/typecheck/should_compile/tc014.stderr
ghc/tests/typecheck/should_compile/tc015.stderr
ghc/tests/typecheck/should_compile/tc016.stderr
ghc/tests/typecheck/should_compile/tc017.stderr
ghc/tests/typecheck/should_compile/tc018.stderr
ghc/tests/typecheck/should_compile/tc019.stderr
ghc/tests/typecheck/should_compile/tc020.stderr
ghc/tests/typecheck/should_compile/tc021.stderr
ghc/tests/typecheck/should_compile/tc022.stderr
ghc/tests/typecheck/should_compile/tc023.stderr
ghc/tests/typecheck/should_compile/tc024.stderr
ghc/tests/typecheck/should_compile/tc025.stderr
ghc/tests/typecheck/should_compile/tc026.stderr
ghc/tests/typecheck/should_compile/tc027.stderr
ghc/tests/typecheck/should_compile/tc028.stderr
ghc/tests/typecheck/should_compile/tc029.stderr
ghc/tests/typecheck/should_compile/tc030.stderr
ghc/tests/typecheck/should_compile/tc031.stderr
ghc/tests/typecheck/should_compile/tc032.stderr
ghc/tests/typecheck/should_compile/tc033.stderr
ghc/tests/typecheck/should_compile/tc034.stderr
ghc/tests/typecheck/should_compile/tc035.stderr
ghc/tests/typecheck/should_compile/tc036.stderr
ghc/tests/typecheck/should_compile/tc037.stderr
ghc/tests/typecheck/should_compile/tc038.stderr
ghc/tests/typecheck/should_compile/tc039.stderr
ghc/tests/typecheck/should_compile/tc040.hs
ghc/tests/typecheck/should_compile/tc040.stderr
ghc/tests/typecheck/should_compile/tc041.hs
ghc/tests/typecheck/should_compile/tc041.stderr
ghc/tests/typecheck/should_compile/tc042.hs
ghc/tests/typecheck/should_compile/tc042.stderr
ghc/tests/typecheck/should_compile/tc043.hs
ghc/tests/typecheck/should_compile/tc043.stderr
ghc/tests/typecheck/should_compile/tc044.stderr
ghc/tests/typecheck/should_compile/tc045.stderr
ghc/tests/typecheck/should_compile/tc046.stderr
ghc/tests/typecheck/should_compile/tc047.stderr
ghc/tests/typecheck/should_compile/tc048.stderr
ghc/tests/typecheck/should_compile/tc049.stderr
ghc/tests/typecheck/should_compile/tc050.stderr
ghc/tests/typecheck/should_compile/tc051.stderr
ghc/tests/typecheck/should_compile/tc052.stderr
ghc/tests/typecheck/should_compile/tc053.stderr
ghc/tests/typecheck/should_compile/tc054.stderr
ghc/tests/typecheck/should_compile/tc055.stderr
ghc/tests/typecheck/should_compile/tc056.hs
ghc/tests/typecheck/should_compile/tc056.stderr
ghc/tests/typecheck/should_compile/tc057.stderr
ghc/tests/typecheck/should_compile/tc058.stderr
ghc/tests/typecheck/should_compile/tc059.stderr
ghc/tests/typecheck/should_compile/tc060.stderr
ghc/tests/typecheck/should_compile/tc061.stderr
ghc/tests/typecheck/should_compile/tc062.stderr
ghc/tests/typecheck/should_compile/tc063.stderr
ghc/tests/typecheck/should_compile/tc064.stderr
ghc/tests/typecheck/should_compile/tc065.stderr
ghc/tests/typecheck/should_compile/tc066.stderr
ghc/tests/typecheck/should_compile/tc067.stderr
ghc/tests/typecheck/should_compile/tc068.stderr
ghc/tests/typecheck/should_compile/tc069.stderr
ghc/tests/typecheck/should_compile/tc070.stderr
ghc/tests/typecheck/should_compile/tc073.stderr
ghc/tests/typecheck/should_compile/tc074.stderr
ghc/tests/typecheck/should_compile/tc076.hs
ghc/tests/typecheck/should_compile/tc076.stderr
ghc/tests/typecheck/should_compile/tc077.hs
ghc/tests/typecheck/should_compile/tc077.stderr
ghc/tests/typecheck/should_compile/tc078.hs
ghc/tests/typecheck/should_compile/tc078.stderr
ghc/tests/typecheck/should_compile/tc079.hs
ghc/tests/typecheck/should_compile/tc079.stderr
ghc/tests/typecheck/should_compile/tc080.stderr
ghc/tests/typecheck/should_compile/tc081.hs
ghc/tests/typecheck/should_compile/tc081.stderr
ghc/tests/typecheck/should_compile/tc082.hs
ghc/tests/typecheck/should_compile/tc082.stderr
ghc/tests/typecheck/should_compile/tc084.stderr
ghc/tests/typecheck/should_compile/tc085.hs
ghc/tests/typecheck/should_compile/tc085.stderr
ghc/tests/typecheck/should_compile/tc086.hs
ghc/tests/typecheck/should_compile/tc086.stderr
ghc/tests/typecheck/should_compile/tc087.stderr
ghc/tests/typecheck/should_compile/tc088.stderr
ghc/tests/typecheck/should_compile/tc089.hs
ghc/tests/typecheck/should_compile/tc089.stderr
ghc/tests/typecheck/should_compile/tc090.stderr
ghc/tests/typecheck/should_compile/tc091.hs
ghc/tests/typecheck/should_compile/tc091.stderr
ghc/tests/typecheck/should_compile/tc092.stderr
ghc/tests/typecheck/should_compile/tc093.hs
ghc/tests/typecheck/should_compile/tc093.stderr
ghc/tests/typecheck/should_compile/tc094.stderr
ghc/tests/typecheck/should_compile/tc095.hs
ghc/tests/typecheck/should_compile/tc096.hs
ghc/tests/typecheck/should_compile/tc097.hs
ghc/tests/typecheck/should_compile/tc098.hs
ghc/tests/typecheck/should_fail/Digraph.hs
ghc/tests/typecheck/should_fail/Digraph.stderr
ghc/tests/typecheck/should_fail/tcfail001.hs
ghc/tests/typecheck/should_fail/tcfail001.stderr
ghc/tests/typecheck/should_fail/tcfail002.stderr
ghc/tests/typecheck/should_fail/tcfail003.stderr
ghc/tests/typecheck/should_fail/tcfail004.stderr
ghc/tests/typecheck/should_fail/tcfail005.stderr
ghc/tests/typecheck/should_fail/tcfail006.stderr
ghc/tests/typecheck/should_fail/tcfail007.stderr
ghc/tests/typecheck/should_fail/tcfail008.stderr
ghc/tests/typecheck/should_fail/tcfail009.stderr
ghc/tests/typecheck/should_fail/tcfail010.stderr
ghc/tests/typecheck/should_fail/tcfail011.stderr
ghc/tests/typecheck/should_fail/tcfail012.stderr
ghc/tests/typecheck/should_fail/tcfail013.stderr
ghc/tests/typecheck/should_fail/tcfail014.stderr
ghc/tests/typecheck/should_fail/tcfail015.stderr
ghc/tests/typecheck/should_fail/tcfail016.stderr
ghc/tests/typecheck/should_fail/tcfail017.stderr
ghc/tests/typecheck/should_fail/tcfail018.stderr
ghc/tests/typecheck/should_fail/tcfail019.stderr
ghc/tests/typecheck/should_fail/tcfail020.stderr
ghc/tests/typecheck/should_fail/tcfail021.hs
ghc/tests/typecheck/should_fail/tcfail021.stderr
ghc/tests/typecheck/should_fail/tcfail023.hs
ghc/tests/typecheck/should_fail/tcfail023.stderr
ghc/tests/typecheck/should_fail/tcfail027.hs
ghc/tests/typecheck/should_fail/tcfail027.stderr
ghc/tests/typecheck/should_fail/tcfail028.hs
ghc/tests/typecheck/should_fail/tcfail028.stderr
ghc/tests/typecheck/should_fail/tcfail029.hs
ghc/tests/typecheck/should_fail/tcfail029.stderr
ghc/tests/typecheck/should_fail/tcfail030.hs
ghc/tests/typecheck/should_fail/tcfail030.stderr
ghc/tests/typecheck/should_fail/tcfail031.stderr
ghc/tests/typecheck/should_fail/tcfail032.stderr
ghc/tests/typecheck/should_fail/tcfail033.stderr
ghc/tests/typecheck/should_fail/tcfail034.stderr
ghc/tests/typecheck/should_fail/tcfail035.hs
ghc/tests/typecheck/should_fail/tcfail035.stderr
ghc/tests/typecheck/should_fail/tcfail036.hs
ghc/tests/typecheck/should_fail/tcfail036.stderr
ghc/tests/typecheck/should_fail/tcfail037.hs
ghc/tests/typecheck/should_fail/tcfail037.stderr
ghc/tests/typecheck/should_fail/tcfail038.hs
ghc/tests/typecheck/should_fail/tcfail038.stderr
ghc/tests/typecheck/should_fail/tcfail039.hs
ghc/tests/typecheck/should_fail/tcfail039.stderr
ghc/tests/typecheck/should_fail/tcfail040.hs
ghc/tests/typecheck/should_fail/tcfail040.stderr
ghc/tests/typecheck/should_fail/tcfail042.hs
ghc/tests/typecheck/should_fail/tcfail042.stderr
ghc/tests/typecheck/should_fail/tcfail043.stderr
ghc/tests/typecheck/should_fail/tcfail044.hs
ghc/tests/typecheck/should_fail/tcfail044.stderr
ghc/tests/typecheck/should_fail/tcfail045.hs
ghc/tests/typecheck/should_fail/tcfail045.stderr
ghc/tests/typecheck/should_fail/tcfail046.hs
ghc/tests/typecheck/should_fail/tcfail046.stderr
ghc/tests/typecheck/should_fail/tcfail047.stderr
ghc/tests/typecheck/should_fail/tcfail048.stderr
ghc/tests/typecheck/should_fail/tcfail049.stderr
ghc/tests/typecheck/should_fail/tcfail050.stderr
ghc/tests/typecheck/should_fail/tcfail051.stderr
ghc/tests/typecheck/should_fail/tcfail052.stderr
ghc/tests/typecheck/should_fail/tcfail053.stderr
ghc/tests/typecheck/should_fail/tcfail054.stderr
ghc/tests/typecheck/should_fail/tcfail055.stderr
ghc/tests/typecheck/should_fail/tcfail056.stderr
ghc/tests/typecheck/should_fail/tcfail057.hs
ghc/tests/typecheck/should_fail/tcfail057.stderr
ghc/tests/typecheck/should_fail/tcfail058.hs
ghc/tests/typecheck/should_fail/tcfail058.stderr
ghc/tests/typecheck/should_fail/tcfail061.hs
ghc/tests/typecheck/should_fail/tcfail061.stderr
ghc/tests/typecheck/should_fail/tcfail062.hs
ghc/tests/typecheck/should_fail/tcfail062.stderr
ghc/tests/typecheck/should_fail/tcfail063.hs
ghc/tests/typecheck/should_fail/tcfail065.stderr
ghc/tests/typecheck/should_fail/tcfail067.stderr
ghc/tests/typecheck/should_fail/tcfail068.hs
ghc/tests/typecheck/should_fail/tcfail068.stderr
ghc/tests/typecheck/should_fail/tcfail069.stderr
ghc/tests/typecheck/should_fail/tcfail070.stderr
ghc/tests/typecheck/should_fail/tcfail071.hs
ghc/tests/typecheck/should_fail/tcfail071.stderr
ghc/tests/typecheck/should_fail/tcfail072.stderr
ghc/tests/typecheck/should_fail/tcfail073.stderr
ghc/tests/typecheck/should_fail/tcfail074.stderr
ghc/tests/typecheck/should_fail/tcfail075.hs
ghc/tests/typecheck/should_fail/tcfail076.stderr
ghc/tests/typecheck/should_fail/tcfail077.hs
ghc/tests/typecheck/should_fail/tcfail077.stderr
ghc/tests/typecheck/should_fail/tcfail078.hs
ghc/tests/typecheck/should_fail/tcfail078.stderr
ghc/tests/typecheck/should_fail/tcfail079.hs
ghc/tests/typecheck/should_fail/tcfail079.stderr
ghc/tests/typecheck/should_fail/tcfail080.hs
ghc/tests/typecheck/should_fail/tcfail080.stderr
ghc/tests/typecheck/should_run/tcrun001.hs
ghc/tests/typecheck/should_run/tcrun002.hs

index a0f21b1..77bc310 100644 (file)
@@ -1,68 +1,60 @@
-_interface_ TheUtils 2 400
-_instance_modules_
-PrelArr IO PrelNum
-_usages_
-PrelBase 1 :: $d1 1 $d11 1 $d14 1 $d15 1 $d16 1 $d17 1 $d18 1 $d19 1 $d2 1 $d21 1 $d22 1 $d23 1 $d24 1 $d25 1 $d26 1 $d27 1 $d3 1 $d32 1 $d33 1 $d34 1 $d36 1 $d37 1 $d38 1 $d39 1 $d41 1 $d42 1 $d44 1 $d45 1 $d46 1 $d48 1 $d49 1 $d50 1 $d51 1 $d53 1 $d54 1 $d55 1 $d57 1 $d6 1 $d7 1 $d8 1 $m* 1 $m+ 1 $m++ 1 $m- 1 $m/= 1 $m< 1 $m<= 1 $m== 1 $m> 1 $m>= 1 $m>> 1 $m>>= 1 $mabs 1 $mcompare 1 $mfromInt 1 $mfromInteger 1 $mmap 1 $mmax 1 $mmin 1 $mnegate 1 $mreturn 1 $mshowList 1 $mshowsPrec 1 $msignum 1 $mzero 1 && 1 . 1 not 1 otherwise 1 show 1 || 1 Eq 1 Eval 1 Functor 1 Maybe 1 Monad 1 MonadPlus 1 MonadZero 1 Num 1 Ord 1 Ordering 1 Ordering 1 Show 1 String 1;
-PrelList 1 :: repeat 1 reverse 1 span 1 take 1;
-PrelNum 1 :: $d10 1 $d16 1 $d17 1 $d18 1 $d29 1 $d33 1 $d34 1 $d35 1;
-PrelTup 1 :: $d10 1 $d13 1 $d14 1 $d3 1 $d4 1 $d49 1 $d50 1 $d9 1;
-Pretty 1 :: $d1 1 $d2 1 hsep 1 int 1 sep 1 text 1 Doc 1;
-_exports_
-TheUtils appEager assertPanic assertPprPanic assoc assocDefault assocDefaultUsing assocUsing cmpList cmpPString endsWith equivClasses hasNoDups isIn isSingleton isn'tIn lengthExceeds mapAccumB mapAccumL mapAccumR mapAndUnzip mapAndUnzip3 mapEager nOfThem naturalMergeSortLe panic panic# pprError pprPanic pprPanic# pprTrace removeDups returnEager runEager runs sortLt startsWith thenCmp thenEager transitiveClosure unzipWith zipEqual zipLazy zipWith3Equal zipWith4Equal zipWithEqual Eager Ord3(cmp);
-_fixities_
-infixr 9 thenCmp;
-_instances_
-instance {Ord3 PrelBase.Int} = $d1;
-instance _forall_ [a] {Ord3 a} => {Ord3 (PrelBase.Maybe a)} = $d2;
-instance _forall_ [a] {Ord3 a} => {Ord3 [a]} = $d3;
-_declarations_
-2 $d1 _:_ {Ord3 PrelBase.Int} ;;
-1 $d2 _:_ _forall_ [a] {Ord3 a} => {Ord3 (PrelBase.Maybe a)} ;;
-1 $d3 _:_ _forall_ [a] {Ord3 a} => {Ord3 [a]} ;;
-1 $mcmp _:_ _forall_ [a] {Ord3 a} => a -> a -> GHC.Int# ;;
+__interface TheUtils 2 0 where
+import PrelBase 1 :: Int 1 Maybe 1;
+__instimport PrelArr ; __instimport IO ; __instimport PrelNum ;
+__export TheUtils appEager assertPanic assertPprPanic assoc assocDefault assocDefaultUsing assocUsing cmpList cmpPString endsWith equivClasses hasNoDups isIn isSingleton isn'tIn lengthExceeds mapAccumB mapAccumL mapAccumR mapAndUnzip mapAndUnzip3 mapEager nOfThem naturalMergeSortLe panic panic# pprError pprPanic pprPanic# pprTrace removeDups returnEager runEager runs sortLt startsWith thenCmp thenEager transitiveClosure unzipWith zipEqual zipLazy zipWith3Equal zipWith4Equal zipWithEqual Eager Ord3{cmp};
+
+instance {Ord3 PrelBase.Int} = _fOrdc;
+instance __forall [a] {Ord3 a} => {Ord3 (PrelBase.Maybe a)} = _fOrda;
+instance __forall [a] {Ord3 a} => {Ord3 [a]} = _fOrdb;
+
+2 _fOrdc :: {Ord3 PrelBase.Int} ;
+1 _fOrda :: __forall [a] {Ord3 a} => {Ord3 (PrelBase.Maybe a)} ;
+1 _fOrdb :: __forall [a] {Ord3 a} => {Ord3 [a]} ;
+1 _mcmp :: __forall [a] {Ord3 a} => a -> a -> GHC.Int# ;
 2 type Eager rvB rvC = (rvC -> rvB) -> rvB ;
 2 class Ord3 rvx where {cmp :: rvx -> rvx -> GHC.Int#} ;
-1 appEager _:_ _forall_ [a b] => Eager b a -> (a -> b) -> b ;;
-1 assertPanic _:_ _forall_ [a] => PrelBase.String -> PrelBase.Int -> a ;;
-2 assertPprPanic _:_ _forall_ [a] => PrelBase.String -> PrelBase.Int -> Pretty.Doc -> a ;;
-1 assoc _:_ _forall_ [a b] {PrelBase.Eq a} => PrelBase.String -> [(a, b)] -> a -> b ;;
-1 assocDefault _:_ _forall_ [a b] {PrelBase.Eq a} => b -> [(a, b)] -> a -> b ;;
-1 assocDefaultUsing _:_ _forall_ [a b] => (a -> a -> PrelBase.Bool) -> b -> [(a, b)] -> a -> b ;;
-1 assocUsing _:_ _forall_ [a b] => (a -> a -> PrelBase.Bool) -> PrelBase.String -> [(a, b)] -> a -> b ;;
-1 cmpList _:_ _forall_ [a] => (a -> a -> GHC.Int#) -> [a] -> [a] -> GHC.Int# ;;
-1 endsWith _:_ PrelBase.String -> PrelBase.String -> PrelBase.Maybe PrelBase.String ;;
-1 equivClasses _:_ _forall_ [a] => (a -> a -> GHC.Int#) -> [a] -> [[a]] ;;
-1 hasNoDups _:_ _forall_ [a] {PrelBase.Eq a} => [a] -> PrelBase.Bool ;;
-1 isIn _:_ _forall_ [a] {PrelBase.Eq a} => PrelBase.String -> a -> [a] -> PrelBase.Bool ;;
-1 isSingleton _:_ _forall_ [a] => [a] -> PrelBase.Bool ;;
-1 isn'tIn _:_ _forall_ [a] {PrelBase.Eq a} => PrelBase.String -> a -> [a] -> PrelBase.Bool ;;
-1 lengthExceeds _:_ _forall_ [a] => [a] -> PrelBase.Int -> PrelBase.Bool ;;
-1 mapAccumB _:_ _forall_ [a b c d] => (b -> c -> a -> (b, c, d)) -> b -> c -> [a] -> (b, c, [d]) ;;
-1 mapAccumL _:_ _forall_ [a b c] => (b -> a -> (b, c)) -> b -> [a] -> (b, [c]) ;;
-1 mapAccumR _:_ _forall_ [a b c] => (b -> a -> (b, c)) -> b -> [a] -> (b, [c]) ;;
-1 mapAndUnzip _:_ _forall_ [a b c] => (a -> (b, c)) -> [a] -> ([b], [c]) ;;
-1 mapAndUnzip3 _:_ _forall_ [a b c d] => (a -> (b, c, d)) -> [a] -> ([b], [c], [d]) ;;
-1 mapEager _:_ _forall_ [a b c] => (a -> (c -> b) -> b) -> [a] -> ([c] -> b) -> b ;;
-1 nOfThem _:_ _forall_ [a] => PrelBase.Int -> a -> [a] ;;
-1 naturalMergeSortLe _:_ _forall_ [a] => (a -> a -> PrelBase.Bool) -> [a] -> [a] ;;
-1 panic _:_ _forall_ [a] => [PrelBase.Char] -> a ;;
-1 panic# _:_ PrelBase.String -> GHC.Int# ;;
-1 pprError _:_ _forall_ [a b] {PrelBase.Show a} => [PrelBase.Char] -> a -> b ;;
-1 pprPanic _:_ _forall_ [a b] {PrelBase.Show a} => [PrelBase.Char] -> a -> b ;;
-1 pprPanic# _:_ _forall_ [a] {PrelBase.Show a} => [PrelBase.Char] -> a -> GHC.Int# ;;
-1 pprTrace _:_ _forall_ [a b] {PrelBase.Show a} => [PrelBase.Char] -> a -> b -> b ;;
-1 removeDups _:_ _forall_ [a] => (a -> a -> GHC.Int#) -> [a] -> ([a], [[a]]) ;;
-1 returnEager _:_ _forall_ [a b] => b -> (b -> a) -> a ;;
-1 runEager _:_ _forall_ [a] => Eager a a -> a ;;
-1 runs _:_ _forall_ [a] => (a -> a -> PrelBase.Bool) -> [a] -> [[a]] ;;
-1 sortLt _:_ _forall_ [a] => (a -> a -> PrelBase.Bool) -> [a] -> [a] ;;
-1 startsWith _:_ PrelBase.String -> PrelBase.String -> PrelBase.Maybe PrelBase.String ;;
-1 thenCmp _:_ GHC.Int# -> GHC.Int# -> GHC.Int# ;;
-1 thenEager _:_ _forall_ [a b c] => Eager b a -> (a -> (c -> b) -> b) -> (c -> b) -> b ;;
-1 transitiveClosure _:_ _forall_ [a] => (a -> [a]) -> (a -> a -> PrelBase.Bool) -> [a] -> [a] ;;
-1 unzipWith _:_ _forall_ [a b c] => (a -> b -> c) -> [(a, b)] -> [c] ;;
-1 zipEqual _:_ _forall_ [a b] => PrelBase.String -> [a] -> [b] -> [(a, b)] ;;
-1 zipLazy _:_ _forall_ [a b] => [a] -> [b] -> [(a, b)] ;;
-1 zipWith3Equal _:_ _forall_ [a b c d] => PrelBase.String -> (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d] ;;
-1 zipWith4Equal _:_ _forall_ [a b c d e] => PrelBase.String -> (a -> b -> c -> d -> e) -> [a] -> [b] -> [c] -> [d] -> [e] ;;
-1 zipWithEqual _:_ _forall_ [a b c] => PrelBase.String -> (a -> b -> c) -> [a] -> [b] -> [c] ;;
+1 appEager :: __forall [a b] => Eager b a -> (a -> b) -> b ;
+1 assertPanic :: __forall [a] => PrelBase.String -> PrelBase.Int -> a ;
+2 assertPprPanic :: __forall [a] => PrelBase.String -> PrelBase.Int -> Pretty.Doc -> a ;
+1 assoc :: __forall [a b] {PrelBase.Eq a} => PrelBase.String -> [(a, b)] -> a -> b ;
+1 assocDefault :: __forall [a b] {PrelBase.Eq a} => b -> [(a, b)] -> a -> b ;
+1 assocDefaultUsing :: __forall [a b] => (a -> a -> PrelBase.Bool) -> b -> [(a, b)] -> a -> b ;
+1 assocUsing :: __forall [a b] => (a -> a -> PrelBase.Bool) -> PrelBase.String -> [(a, b)] -> a -> b ;
+1 cmpList :: __forall [a] => (a -> a -> GHC.Int#) -> [a] -> [a] -> GHC.Int# ;
+1 endsWith :: PrelBase.String -> PrelBase.String -> PrelBase.Maybe PrelBase.String ;
+1 equivClasses :: __forall [a] => (a -> a -> GHC.Int#) -> [a] -> [[a]] ;
+1 hasNoDups :: __forall [a] {PrelBase.Eq a} => [a] -> PrelBase.Bool ;
+1 infixr 9 thenCmp ;
+1 isIn :: __forall [a] {PrelBase.Eq a} => PrelBase.String -> a -> [a] -> PrelBase.Bool ;
+1 isSingleton :: __forall [a] => [a] -> PrelBase.Bool ;
+1 isn'tIn :: __forall [a] {PrelBase.Eq a} => PrelBase.String -> a -> [a] -> PrelBase.Bool ;
+1 lengthExceeds :: __forall [a] => [a] -> PrelBase.Int -> PrelBase.Bool ;
+1 mapAccumB :: __forall [a b c d] => (b -> c -> a -> (b, c, d)) -> b -> c -> [a] -> (b, c, [d]) ;
+1 mapAccumL :: __forall [a b c] => (b -> a -> (b, c)) -> b -> [a] -> (b, [c]) ;
+1 mapAccumR :: __forall [a b c] => (b -> a -> (b, c)) -> b -> [a] -> (b, [c]) ;
+1 mapAndUnzip :: __forall [a b c] => (a -> (b, c)) -> [a] -> ([b], [c]) ;
+1 mapAndUnzip3 :: __forall [a b c d] => (a -> (b, c, d)) -> [a] -> ([b], [c], [d]) ;
+1 mapEager :: __forall [a b c] => (a -> (c -> b) -> b) -> [a] -> ([c] -> b) -> b ;
+1 nOfThem :: __forall [a] => PrelBase.Int -> a -> [a] ;
+1 naturalMergeSortLe :: __forall [a] => (a -> a -> PrelBase.Bool) -> [a] -> [a] ;
+1 panic :: __forall [a] => [PrelBase.Char] -> a ;
+1 panic# :: PrelBase.String -> GHC.Int# ;
+1 pprError :: __forall [a b] {PrelBase.Show a} => [PrelBase.Char] -> a -> b ;
+1 pprPanic :: __forall [a b] {PrelBase.Show a} => [PrelBase.Char] -> a -> b ;
+1 pprPanic# :: __forall [a] {PrelBase.Show a} => [PrelBase.Char] -> a -> GHC.Int# ;
+1 pprTrace :: __forall [a b] {PrelBase.Show a} => [PrelBase.Char] -> a -> b -> b ;
+1 removeDups :: __forall [a] => (a -> a -> GHC.Int#) -> [a] -> ([a], [[a]]) ;
+1 returnEager :: __forall [a b] => b -> (b -> a) -> a ;
+1 runEager :: __forall [a] => Eager a a -> a ;
+1 runs :: __forall [a] => (a -> a -> PrelBase.Bool) -> [a] -> [[a]] ;
+1 sortLt :: __forall [a] => (a -> a -> PrelBase.Bool) -> [a] -> [a] ;
+1 startsWith :: PrelBase.String -> PrelBase.String -> PrelBase.Maybe PrelBase.String ;
+1 thenCmp :: GHC.Int# -> GHC.Int# -> GHC.Int# ;
+1 thenEager :: __forall [a b c] => Eager b a -> (a -> (c -> b) -> b) -> (c -> b) -> b ;
+1 transitiveClosure :: __forall [a] => (a -> [a]) -> (a -> a -> PrelBase.Bool) -> [a] -> [a] ;
+1 unzipWith :: __forall [a b c] => (a -> b -> c) -> [(a, b)] -> [c] ;
+1 zipEqual :: __forall [a b] => PrelBase.String -> [a] -> [b] -> [(a, b)] ;
+1 zipLazy :: __forall [a b] => [a] -> [b] -> [(a, b)] ;
+1 zipWith3Equal :: __forall [a b c d] => PrelBase.String -> (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d] ;
+1 zipWith4Equal :: __forall [a b c d e] => PrelBase.String -> (a -> b -> c -> d -> e) -> [a] -> [b] -> [c] -> [d] -> [e] ;
+1 zipWithEqual :: __forall [a b c] => PrelBase.String -> (a -> b -> c) -> [a] -> [b] -> [c] ;
index 16f2f54..1bf09a3 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed a;
-_declarations_
-1 a _:_ _forall_ [$a] {PrelBase.Num $a} => $a -> $a ;;
+__export ShouldSucceed a;
+1 a :: __forall [a] {PrelBase.Num a} => a -> a ;
index ef62899..1fe360d 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed b;
-_declarations_
-1 b _:_ PrelBase.Int ;;
+__export ShouldSucceed b;
+1 b :: PrelBase.Integer ;
index f2bae39..93af2b4 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed c d e;
-_declarations_
-1 c _:_ (PrelBase.Int, PrelBase.Int) ;;
-1 d _:_ PrelBase.Int ;;
-1 e _:_ PrelBase.Int ;;
+__export ShouldSucceed c d e;
+1 c :: (PrelBase.Integer, PrelBase.Integer) ;
+1 d :: PrelBase.Integer ;
+1 e :: PrelBase.Integer ;
index 118b498..f7baa06 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ PrelBase.Bool -> PrelBase.Bool ;;
+__export ShouldSucceed f;
+1 f :: PrelBase.Bool -> PrelBase.Bool ;
index 460d320..12f3124 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed g;
-_declarations_
-1 g _:_ _forall_ [$a $b] {PrelBase.Num $b} => ([$b], $a) -> $b ;;
+__export ShouldSucceed g;
+1 g :: __forall [t _116] {PrelBase.Num t} => ([t], _116) -> t ;
index b728f25..243ff4a 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed h;
-_declarations_
-1 h _:_ [PrelBase.Int] ;;
+__export ShouldSucceed h;
+1 h :: [PrelBase.Integer] ;
index eb40bf8..56862a0 100644 (file)
@@ -1,8 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed j k l m;
-_declarations_
-1 j _:_ PrelBase.Int ;;
-1 k _:_ [PrelBase.Int] ;;
-1 l _:_ [PrelBase.Int] ;;
-1 m _:_ PrelBase.Int ;;
+__export ShouldSucceed j k l m;
+1 j :: PrelBase.Integer ;
+1 k :: [PrelBase.Integer] ;
+1 l :: [PrelBase.Integer] ;
+1 m :: PrelBase.Integer ;
index 4f8abeb..d74ee46 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed n;
-_declarations_
-1 n _:_ _forall_ [$a] {PrelBase.Num $a} => PrelBase.Bool -> $a ;;
+__export ShouldSucceed n;
+1 n :: __forall [t] {PrelBase.Num t} => PrelBase.Bool -> t ;
index 2cfaf7e..4d9b431 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed o;
-_declarations_
-1 o _:_ _forall_ [$a] {PrelBase.Num $a} => (PrelBase.Bool, $a) -> $a ;;
+__export ShouldSucceed o;
+1 o :: __forall [a] {PrelBase.Num a} => (PrelBase.Bool, a) -> a ;
index 203846d..6ee8e40 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed p;
-_declarations_
-1 p _:_ [(PrelBase.Int, PrelBase.Bool)] ;;
+__export ShouldSucceed p;
+1 p :: [(PrelBase.Integer, PrelBase.Bool)] ;
index 37537b1..cc1e5fb 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed x;
-_declarations_
-1 x _:_ _forall_ [$a] => $a ;;
+__export ShouldSucceed x;
+1 x :: __forall [t] => t ;
index 34a14d0..7441966 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed q;
-_declarations_
-1 q _:_ _forall_ [$a] => $a -> $a ;;
+__export ShouldSucceed q;
+1 q :: __forall [t] => t -> t ;
index 116c33a..d984bee 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed r s;
-_declarations_
-1 r _:_ PrelBase.Int ;;
-1 s _:_ PrelBase.Char ;;
+__export ShouldSucceed r s;
+1 r :: PrelBase.Integer ;
+1 s :: PrelBase.Char ;
index 1686aac..ec9651f 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed t;
-_declarations_
-1 t _:_ PrelBase.Int ;;
+__export ShouldSucceed t;
+1 t :: PrelBase.Integer ;
index c010997..0bec60a 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed u;
-_declarations_
-1 u _:_ _forall_ [$a $b $c] => $a -> ($b, $c) -> $a ;;
+__export ShouldSucceed u;
+1 u :: __forall [t _116 _1161] => t -> (_116, _1161) -> t ;
index ed5d48f..79c6d1d 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ _forall_ [$a $b] => $b -> $a -> $b ;;
+__export ShouldSucceed f;
+1 f :: __forall [t _116] => t -> _116 -> t ;
index a595c10..696bcd2 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed v;
-_declarations_
-1 v _:_ PrelBase.Int ;;
+__export ShouldSucceed v;
+1 v :: PrelBase.Integer ;
index 58ed185..167497a 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed w;
-_declarations_
-1 w _:_ PrelBase.Int ;;
+__export ShouldSucceed w;
+1 w :: PrelBase.Integer ;
index 3dbc6eb..e3c3db6 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed al am;
-_declarations_
-1 al _:_ PrelBase.Int ;;
-1 am _:_ [PrelBase.Int] ;;
+__export ShouldSucceed al am;
+1 al :: PrelBase.Integer ;
+1 am :: [PrelBase.Integer] ;
index a2ccf24..af0656b 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ _forall_ [$a] => $a -> [$a] ;;
+__export ShouldSucceed f;
+1 f :: __forall [t] => t -> [t] ;
index 004a98a..d302f76 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed a f x;
-_declarations_
-1 a _:_ _forall_ [$a $b] => ($a, $b) ;;
-1 f _:_ _forall_ [$a $b $c] => $a -> ($b, $c) ;;
-1 x _:_ _forall_ [$a] => $a ;;
+__export ShouldSucceed a f x;
+1 a :: __forall [t _116] => (t, _116) ;
+1 f :: __forall [t _116 _1161] => t -> (_116, _1161) ;
+1 x :: __forall [t] => t ;
index 45cd09e..fe63e43 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed iD main;
-_declarations_
-1 iD _:_ _forall_ [$a] => $a -> $a ;;
-1 main _:_ _forall_ [$a] => $a -> $a ;;
+__export ShouldSucceed iD main;
+1 iD :: __forall [t] => t -> t ;
+1 main :: __forall [t] => t -> t ;
index db99b11..9e7987a 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed k main s;
-_declarations_
-1 k _:_ _forall_ [$a $b] => $b -> $a -> $b ;;
-1 main _:_ _forall_ [$a] => $a -> $a ;;
-1 s _:_ _forall_ [$a $b $c] => ($c -> $b -> $a) -> ($c -> $b) -> $c -> $a ;;
+__export ShouldSucceed k main s;
+1 k :: __forall [t _116] => t -> _116 -> t ;
+1 main :: __forall [t] => t -> t ;
+1 s :: __forall [t _116 _1161] => (_1161 -> _116 -> t) -> (_1161 -> _116) -> _1161 -> t ;
index db99b11..9e7987a 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed k main s;
-_declarations_
-1 k _:_ _forall_ [$a $b] => $b -> $a -> $b ;;
-1 main _:_ _forall_ [$a] => $a -> $a ;;
-1 s _:_ _forall_ [$a $b $c] => ($c -> $b -> $a) -> ($c -> $b) -> $c -> $a ;;
+__export ShouldSucceed k main s;
+1 k :: __forall [t _116] => t -> _116 -> t ;
+1 main :: __forall [t] => t -> t ;
+1 s :: __forall [t _116 _1161] => (_1161 -> _116 -> t) -> (_1161 -> _116) -> _1161 -> t ;
index d9d1935..ce35c34 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed g;
-_declarations_
-1 g _:_ PrelBase.Bool -> PrelBase.Bool ;;
+__export ShouldSucceed g;
+1 g :: PrelBase.Bool -> PrelBase.Bool ;
index a8bc395..b916e5a 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f g;
-_declarations_
-1 f _:_ _forall_ [$a] => PrelBase.Bool -> $a -> $a ;;
-1 g _:_ PrelBase.Bool -> PrelBase.Bool ;;
+__export ShouldSucceed f g;
+1 f :: __forall [t] => PrelBase.Bool -> t -> t ;
+1 g :: PrelBase.Bool -> PrelBase.Bool ;
index 2061985..0081393 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f g h;
-_declarations_
-1 f _:_ _forall_ [$a] => PrelBase.Bool -> $a -> $a ;;
-1 g _:_ _forall_ [$a] => $a -> PrelBase.Bool -> $a ;;
-1 h _:_ PrelBase.Bool -> PrelBase.Bool ;;
+__export ShouldSucceed f g h;
+1 f :: __forall [t] => PrelBase.Bool -> t -> t ;
+1 g :: __forall [t] => t -> PrelBase.Bool -> t ;
+1 h :: PrelBase.Bool -> PrelBase.Bool ;
index 0ec287b..3bacaa8 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed H;
-_declarations_
+__export ShouldSucceed H;
 1 type H = (PrelBase.Int, PrelBase.Bool) ;
index d16a48a..b352b51 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed G K{H M};
-_declarations_
+__export ShouldSucceed G K{H M};
 1 data K = H PrelBase.Bool |  M G ;
 1 type G = [PrelBase.Int] ;
index 6c905b7..82d6b39 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed G H;
-_declarations_
+__export ShouldSucceed G H;
 1 type G = (H, PrelBase.Char) ;
 1 type H = [PrelBase.Bool] ;
index 02aaf35..2272d48 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed Rec{Node};
-_declarations_
+__export ShouldSucceed Rec{Node};
 1 data Rec = Node PrelBase.Int Rec ;
index 29aa472..0788789 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed AList{Node Other};
-_declarations_
-1 data AList $r3u = Node $r3u [$r3u] |  Other ($r3u, PrelBase.Char) ;
+__export ShouldSucceed AList{Node Other};
+1 data AList b = Node b [b] |  Other (b, PrelBase.Char) ;
index 6391216..02f23e8 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed F Twine{Twine2} Twist{Twist2};
-_declarations_
+__export ShouldSucceed F Twine{Twine2} Twist{Twist2};
 1 data Twine = Twine2 Twist ;
 1 data Twist = Twist2 Twine ;
 1 type F = Twine ;
index faa3404..1ec12a9 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed g AList{ANull ANode} IntList;
-_declarations_
-1 data AList $r3C = ANull |  ANode $r3C (AList $r3C) ;
-1 g _:_ _forall_ [$a] {PrelBase.Num $a} => AList PrelBase.Bool -> $a ;;
+__export ShouldSucceed g AList{ANull ANode} IntList;
+1 data AList a = ANull |  ANode a (AList a) ;
+1 g :: __forall [t] {PrelBase.Num t} => AList PrelBase.Bool -> t ;
 1 type IntList = AList PrelBase.Int ;
index c3ed042..4d85e65 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed g AnnExpr Expr{Var App};
-_declarations_
-1 data Expr $r3E = Var [PrelBase.Char] |  App (AnnExpr $r3E) (AnnExpr $r3E) ;
-1 g _:_ _forall_ [$a] => ($a, Expr $a) -> [[PrelBase.Char]] ;;
-1 type AnnExpr $r3I = ($r3I, Expr $r3I) ;
+__export ShouldSucceed g AnnExpr Expr{Var App};
+1 data Expr a = Var [PrelBase.Char] |  App (AnnExpr a) (AnnExpr a) ;
+1 g :: __forall [a] => (a, Expr a) -> [[PrelBase.Char]] ;
+1 type AnnExpr a = (a, Expr a) ;
index 633196f..7203d34 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed A{:A :A op1};
-_declarations_
-1 class {PrelBase.Eq $r3t}  => A $r3t where {op1 :: $r3t -> $r3t} ;
+__export ShouldSucceed A{op1};
+1 class {PrelBase.Eq a}  => A a where {op1 :: a -> a} ;
index f9130c8..6c4a493 100644 (file)
@@ -1,8 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed Eq'{:Eq' :Eq' deq};
-_instances_
-instance _forall_ [$a] {Eq' $a} => {Eq' [$a]} = $dEq'0;
-_declarations_
-1 $dEq'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
-1 class Eq' $r3G where {deq :: $r3G -> $r3G -> PrelBase.Bool} ;
+__export ShouldSucceed Eq'{deq};
+instance __forall [a] {Eq' a} => {Eq' [a]} = _gEq'_91_93;
+1 _gEq'_91_93 :: __forall [a] {Eq' a} => {Eq' [a]} ;
+1 class Eq' a where {deq :: a -> a -> PrelBase.Bool} ;
index 86ef92b..9e85b16 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ _forall_ [$a] {PrelBase.Num $a, PrelBase.Eq $a} => [$a] -> [$a] ;;
+__export ShouldSucceed f;
+1 f :: __forall [a] {PrelBase.Num a, PrelBase.Eq a} => [a] -> [a] ;
index 633196f..7203d34 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed A{:A :A op1};
-_declarations_
-1 class {PrelBase.Eq $r3t}  => A $r3t where {op1 :: $r3t -> $r3t} ;
+__export ShouldSucceed A{op1};
+1 class {PrelBase.Eq a}  => A a where {op1 :: a -> a} ;
index 33113cc..4897a2b 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldSucceed where
 
---!!! tests the deduction of contexts.
+-- !!! tests the deduction of contexts.
 
 f :: (Eq a) => a -> [a]
 
index c5b8a06..2f2762c 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ _forall_ [$a] {PrelBase.Eq $a} => $a -> [$a] ;;
+__export ShouldSucceed f;
+1 f :: __forall [a] {PrelBase.Eq a} => a -> [a] ;
index 730af9c..b42374f 100644 (file)
@@ -1,4 +1,4 @@
---!!! a very simple test of class and instance declarations
+-- !!! a very simple test of class and instance declarations
 
 module ShouldSucceed where
 
index 5f0b57b..552aa39 100644 (file)
@@ -1,9 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f H{:H :H op1};
-_instances_
-instance {H PrelBase.Bool} = $dHBool0;
-_declarations_
-1 $dHBool0 _:_ {H PrelBase.Bool} ;;
-1 class H $r3F where {op1 :: $r3F -> $r3F -> $r3F} ;
-1 f _:_ PrelBase.Bool -> PrelBase.Int -> PrelBase.Bool ;;
+__export ShouldSucceed f H{op1};
+instance {H PrelBase.Bool} = _fHBool;
+1 _fHBool :: {H PrelBase.Bool} ;
+1 class H a where {op1 :: a -> a -> a} ;
+1 f :: PrelBase.Bool -> PrelBase.Int -> PrelBase.Bool ;
index 708ea26..58a120c 100644 (file)
@@ -1,5 +1,5 @@
---!!! a file mailed us by Ryzard Kubiak. This provides a good test of the code
---!!! handling type signatures and recursive data types.
+-- !!! a file mailed us by Ryzard Kubiak. This provides a good test of the code
+-- !!! handling type signatures and recursive data types.
 
 module ShouldSucceed where
 
index b27ae35..cdba6f1 100644 (file)
@@ -1,21 +1,19 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed add app before flatten idb idl lEngth nUll neg rEverse sUm swap Boolean{FF TT} List{Nil Cons} Nat{Zero Succ} Pair{Mkpair} Tree{Leaf Node};
-_declarations_
-1 add _:_ Nat -> Nat -> Nat ;;
-1 app _:_ _forall_ [$a] => List $a -> List $a -> List $a ;;
-1 before _:_ List Nat -> List Nat ;;
+__export ShouldSucceed add app before flatten idb idl lEngth nUll neg rEverse sUm swap Boolean{FF TT} List{Nil Cons} Nat{Zero Succ} Pair{Mkpair} Tree{Leaf Node};
+1 add :: Nat -> Nat -> Nat ;
+1 app :: __forall [alpha] => List alpha -> List alpha -> List alpha ;
+1 before :: List Nat -> List Nat ;
 1 data Boolean = FF |  TT ;
-1 data List $r5K = Nil |  Cons $r5K (List $r5K) ;
+1 data List alpha = Nil |  Cons alpha (List alpha) ;
 1 data Nat = Zero |  Succ Nat ;
-1 data Pair $r5O $r5P = Mkpair $r5O $r5P ;
-1 data Tree $r5D = Leaf $r5D |  Node (Tree $r5D) (Tree $r5D) ;
-1 flatten _:_ _forall_ [$a] => Tree $a -> List $a ;;
-1 idb _:_ Boolean -> Boolean ;;
-1 idl _:_ _forall_ [$a] => List $a -> List $a ;;
-1 lEngth _:_ _forall_ [$a] => List $a -> Nat ;;
-1 nUll _:_ _forall_ [$a] => List $a -> Boolean ;;
-1 neg _:_ Boolean -> Boolean ;;
-1 rEverse _:_ _forall_ [$a] => List $a -> List $a ;;
-1 sUm _:_ Tree Nat -> Nat ;;
-1 swap _:_ _forall_ [$a $b] => Pair $a $b -> Pair $b $a ;;
+1 data Pair a b = Mkpair a b ;
+1 data Tree t = Leaf t |  Node (Tree t) (Tree t) ;
+1 flatten :: __forall [alpha] => Tree alpha -> List alpha ;
+1 idb :: Boolean -> Boolean ;
+1 idl :: __forall [a] => List a -> List a ;
+1 lEngth :: __forall [a] => List a -> Nat ;
+1 nUll :: __forall [alpha] => List alpha -> Boolean ;
+1 neg :: Boolean -> Boolean ;
+1 rEverse :: __forall [alpha] => List alpha -> List alpha ;
+1 sUm :: Tree Nat -> Nat ;
+1 swap :: __forall [a b] => Pair a b -> Pair b a ;
index 727f288..2a2e5f0 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldSucceed where
 
---!!! another simple test of class and instance code.
+-- !!! another simple test of class and instance code.
 
 class A a where
  op1 :: a
index f85d585..bc905fe 100644 (file)
@@ -1,12 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f A{:A :A op1} B{:B :B op2};
-_instances_
-instance {A PrelBase.Int} = $dAInt0;
-instance _forall_ [$a] {B $a} => {B [$a]} = $dB0;
-_declarations_
-1 $dAInt0 _:_ {A PrelBase.Int} ;;
-1 $dB0 _:_ _forall_ [$a] {B $a} => {B [$a]} ;;
-1 class A $r3P where {op1 :: $r3P} ;
-1 class B $r3K where {op2 :: $r3K -> PrelBase.Int} ;
-1 f _:_ _forall_ [$a $b] {A $b} => $a -> $b ;;
+__export ShouldSucceed f A{op1} B{op2};
+instance {A PrelBase.Int} = _fAInt;
+instance __forall [a] {B a} => {B [a]} = _gB_91_93;
+1 _fAInt :: {A PrelBase.Int} ;
+1 _gB_91_93 :: __forall [a] {B a} => {B [a]} ;
+1 class A a where {op1 :: a} ;
+1 class B b where {op2 :: b -> PrelBase.Int} ;
+1 f :: __forall [t a] {A a} => t -> a ;
index 0c66ee7..ca6a89a 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ _forall_ [$a] => $a -> PrelBase.() ;;
+__export ShouldSucceed f;
+1 f :: __forall [t] => t -> PrelBase.() ;
index e24e4f6..6b2d62d 100644 (file)
@@ -1,11 +1,8 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed B{:B :B op2} C{:C :C op1};
-_instances_
-instance _forall_ [$a] {B $a} => {B [$a]} = $dB0;
-instance _forall_ [$a] => {C [$a]} = $dC0;
-_declarations_
-1 $dB0 _:_ _forall_ [$a] {B $a, C [$a]} => {B [$a]} ;;
-1 $dC0 _:_ _forall_ [$a] => {C [$a]} ;;
-1 class {C $r3I}  => B $r3I where {op2 :: $r3I -> $r3I -> $r3I} ;
-1 class C $r3L where {op1 :: $r3L -> $r3L} ;
+__export ShouldSucceed B{op2} C{op1};
+instance __forall [a] {B a} => {B [a]} = _gB_91_93;
+instance __forall [a] => {C [a]} = _gC_91_93;
+1 _gB_91_93 :: __forall [a] {B a, C [a]} => {B [a]} ;
+1 _gC_91_93 :: __forall [a] => {C [a]} ;
+1 class {C a}  => B a where {op2 :: a -> a -> a} ;
+1 class C a where {op1 :: a -> a} ;
index 63621c0..d6bfcd4 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed B{:B :B op2} C{:C :C op1};
-_declarations_
-1 class {C $r3x}  => B $r3x where {op2 :: $r3x -> $r3x -> $r3x} ;
-1 class C $r3A where {op1 :: $r3A -> $r3A} ;
+__export ShouldSucceed B{op2} C{op1};
+1 class {C a}  => B a where {op2 :: a -> a -> a} ;
+1 class C a where {op1 :: a -> a} ;
index 512ff5c..78107a3 100644 (file)
@@ -1,8 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f mp sd OL;
-_declarations_
-1 f _:_ _forall_ [$a $b $c] => $a -> [($b, $c)] -> [$c] ;;
-1 mp _:_ _forall_ [$a $b] => ($a -> $b) -> [$a] -> [$b] ;;
-1 sd _:_ _forall_ [$a $b] => ($a, $b) -> $b ;;
-1 type OL $r3K = [$r3K] ;
+__export ShouldSucceed f mp sd OL;
+1 f :: __forall [t _116 _1161] => t -> [(_116, _1161)] -> [_1161] ;
+1 mp :: __forall [t _116] => (_116 -> t) -> [_116] -> [t] ;
+1 sd :: __forall [t _116] => (_116, t) -> t ;
+1 type OL a = [a] ;
index 173db16..72be5f6 100644 (file)
@@ -1,11 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed mAp ranAFE ranOAL sNd AFE{MkAFE} FG{MkFG} OL{MkOL};
-_declarations_
-1 data AFE $r3X $r3Y $r3Z = MkAFE (OL ($r3X, FG $r3Y $r3Z)) ;
-1 data FG $r42 $r43 = MkFG (OL ($r42, $r43)) ;
-1 data OL $r46 = MkOL [$r46] ;
-1 mAp _:_ _forall_ [$a $b] => ($a -> $b) -> [$a] -> [$b] ;;
-1 ranAFE _:_ _forall_ [$a $b $c] => AFE $a $b $c -> [FG $b $c] ;;
-1 ranOAL _:_ _forall_ [$a $b] => OL ($a, $b) -> [$b] ;;
-1 sNd _:_ _forall_ [$a $b] => ($a, $b) -> $b ;;
+__export ShouldSucceed mAp ranAFE ranOAL sNd AFE{MkAFE} FG{MkFG} OL{MkOL};
+1 data AFE n a b = MkAFE (OL (n, FG a b)) ;
+1 data FG a b = MkFG (OL (a, b)) ;
+1 data OL a = MkOL [a] ;
+1 mAp :: __forall [t _116] => (_116 -> t) -> [_116] -> [t] ;
+1 ranAFE :: __forall [n a b] => AFE n a b -> [FG a b] ;
+1 ranOAL :: __forall [a v] => OL (a, v) -> [v] ;
+1 sNd :: __forall [t _116] => (_116, t) -> t ;
index eb84e61..7d174b2 100644 (file)
@@ -1,15 +1,13 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed fib main1 main2 main3 mem mem1 mem2 mem3 mem4 oR oR1;
-_declarations_
-1 fib _:_ _forall_ [$a] {PrelBase.Num $a, PrelBase.Ord $a} => $a -> $a ;;
-1 main1 _:_ PrelBase.Bool ;;
-1 main2 _:_ PrelBase.Bool ;;
-1 main3 _:_ PrelBase.Bool ;;
-1 mem _:_ _forall_ [$a] {PrelBase.Eq $a} => $a -> [$a] -> PrelBase.Bool ;;
-1 mem1 _:_ _forall_ [$a] {PrelBase.Eq $a} => $a -> [$a] -> PrelBase.Bool ;;
-1 mem2 _:_ _forall_ [$a] {PrelBase.Eq $a} => $a -> [$a] -> PrelBase.Bool ;;
-1 mem3 _:_ _forall_ [$a] {PrelBase.Eq [$a]} => $a -> [$a] -> PrelBase.Bool ;;
-1 mem4 _:_ _forall_ [$a] {PrelBase.Eq [$a]} => $a -> [$a] -> PrelBase.Bool ;;
-1 oR _:_ PrelBase.Bool -> PrelBase.Bool -> PrelBase.Bool ;;
-1 oR1 _:_ PrelBase.Bool -> PrelBase.Bool -> PrelBase.Bool ;;
+__export ShouldSucceed fib main1 main2 main3 mem mem1 mem2 mem3 mem4 oR oR1;
+1 fib :: __forall [a] {PrelBase.Num a, PrelBase.Ord a} => a -> a ;
+1 main1 :: PrelBase.Bool ;
+1 main2 :: PrelBase.Bool ;
+1 main3 :: PrelBase.Bool ;
+1 mem :: __forall [a] {PrelBase.Eq a} => a -> [a] -> PrelBase.Bool ;
+1 mem1 :: __forall [a] {PrelBase.Eq a} => a -> [a] -> PrelBase.Bool ;
+1 mem2 :: __forall [a] {PrelBase.Eq a} => a -> [a] -> PrelBase.Bool ;
+1 mem3 :: __forall [t] {PrelBase.Eq [t]} => t -> [t] -> PrelBase.Bool ;
+1 mem4 :: __forall [t] {PrelBase.Eq [t]} => t -> [t] -> PrelBase.Bool ;
+1 oR :: PrelBase.Bool -> PrelBase.Bool -> PrelBase.Bool ;
+1 oR1 :: PrelBase.Bool -> PrelBase.Bool -> PrelBase.Bool ;
index babed2c..43a7fd3 100644 (file)
@@ -1,12 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f g Foo{:Foo :Foo o_and};
-_instances_
-instance {Foo PrelBase.Bool} = $dFooBool0;
-instance {Foo PrelBase.Int} = $dFooInt0;
-_declarations_
-1 $dFooBool0 _:_ {Foo PrelBase.Bool} ;;
-1 $dFooInt0 _:_ {Foo PrelBase.Int} ;;
-1 class Foo $r3Q where {o_and :: $r3Q -> $r3Q -> $r3Q} ;
-1 f _:_ _forall_ [$a] => PrelBase.Bool -> $a -> PrelBase.Bool ;;
-1 g _:_ _forall_ [$a $b] {PrelBase.Num $b, Foo $b} => $b -> $a -> $b ;;
+__export ShouldSucceed f g Foo{o_and};
+instance {Foo PrelBase.Bool} = _fFooBool;
+instance {Foo PrelBase.Int} = _fFooInt;
+1 _fFooBool :: {Foo PrelBase.Bool} ;
+1 _fFooInt :: {Foo PrelBase.Int} ;
+1 class Foo a where {o_and :: a -> a -> a} ;
+1 f :: __forall [t] => PrelBase.Bool -> t -> PrelBase.Bool ;
+1 g :: __forall [t a] {PrelBase.Num a, Foo a} => a -> t -> a ;
index 711eb20..9e88ca9 100644 (file)
@@ -1,13 +1,10 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed Eq'{:Eq' :Eq' doubleeq} Ord'{:Ord' :Ord' lt};
-_instances_
-instance _forall_ [$a] {Eq' $a} => {Eq' [$a]} = $dEq'0;
-instance {Eq' PrelBase.Int} = $dEq'Int0;
-instance {Ord' PrelBase.Int} = $dOrd'Int0;
-_declarations_
-1 $dEq'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
-1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
-1 $dOrd'Int0 _:_ {Ord' PrelBase.Int} ;;
-1 class Eq' $r3Q where {doubleeq :: $r3Q -> $r3Q -> PrelBase.Bool} ;
-1 class {Eq' $r3N}  => Ord' $r3N where {lt :: $r3N -> $r3N -> PrelBase.Bool} ;
+__export ShouldSucceed Eq'{doubleeq} Ord'{lt};
+instance {Eq' PrelBase.Int} = _fEq'Int;
+instance {Ord' PrelBase.Int} = _fOrd'Int;
+instance __forall [a] {Eq' a} => {Eq' [a]} = _gEq'_91_93;
+1 _fEq'Int :: {Eq' PrelBase.Int} ;
+1 _fOrd'Int :: {Ord' PrelBase.Int} ;
+1 _gEq'_91_93 :: __forall [a] {Eq' a} => {Eq' [a]} ;
+1 class Eq' a where {doubleeq :: a -> a -> PrelBase.Bool} ;
+1 class {Eq' a}  => Ord' a where {lt :: a -> a -> PrelBase.Bool} ;
index baee018..fb1ffea 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed A B C;
-_declarations_
-1 type A $r3v = B $r3v ;
-1 type B $r3t = C ;
+__export ShouldSucceed A B C;
+1 type A a = B a ;
+1 type B c = C ;
 1 type C = PrelBase.Int ;
index 72d70c0..05c54ff 100644 (file)
@@ -1,11 +1,8 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Eq'{:Eq' :Eq' deq};
-_instances_
-instance _forall_ [$a] {Eq' $a} => {Eq' [$a]} = $dEq'0;
-instance {Eq' PrelBase.Int} = $dEq'Int0;
-_declarations_
-1 $dEq'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
-1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
-1 class Eq' $r3K where {deq :: $r3K -> $r3K -> PrelBase.Bool} ;
-1 f _:_ _forall_ [$a] {PrelBase.Num $a, Eq' [$a]} => [$a] -> PrelBase.Bool ;;
+__export ShouldSucceed f Eq'{deq};
+instance {Eq' PrelBase.Int} = _fEq'Int;
+instance __forall [a] {Eq' a} => {Eq' [a]} = _gEq'_91_93;
+1 _fEq'Int :: {Eq' PrelBase.Int} ;
+1 _gEq'_91_93 :: __forall [a] {Eq' a} => {Eq' [a]} ;
+1 class Eq' a where {deq :: a -> a -> PrelBase.Bool} ;
+1 f :: __forall [t] {PrelBase.Num t, Eq' [t]} => [t] -> PrelBase.Bool ;
index 334bd7f..46806e2 100644 (file)
@@ -1,12 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Eq'{:Eq' :Eq' doubleeq} Ord'{:Ord' :Ord' lt};
-_instances_
-instance {Eq' PrelBase.Int} = $dEq'Int0;
-instance {Ord' PrelBase.Int} = $dOrd'Int0;
-_declarations_
-1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
-1 $dOrd'Int0 _:_ {Ord' PrelBase.Int} ;;
-1 class Eq' $r3P where {doubleeq :: $r3P -> $r3P -> PrelBase.Bool} ;
-1 class {Eq' $r3M}  => Ord' $r3M where {lt :: $r3M -> $r3M -> PrelBase.Bool} ;
-1 f _:_ _forall_ [$a $b] {PrelBase.Num $b, Ord' $b} => $b -> $a -> PrelBase.Bool ;;
+__export ShouldSucceed f Eq'{doubleeq} Ord'{lt};
+instance {Eq' PrelBase.Int} = _fEq'Int;
+instance {Ord' PrelBase.Int} = _fOrd'Int;
+1 _fEq'Int :: {Eq' PrelBase.Int} ;
+1 _fOrd'Int :: {Ord' PrelBase.Int} ;
+1 class Eq' a where {doubleeq :: a -> a -> PrelBase.Bool} ;
+1 class {Eq' a}  => Ord' a where {lt :: a -> a -> PrelBase.Bool} ;
+1 f :: __forall [t a] {PrelBase.Num a, Ord' a} => a -> t -> PrelBase.Bool ;
index 945f274..c883b48 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed x y;
-_declarations_
-1 x _:_ _forall_ [$a $b] => $a -> $a ;;
-1 y _:_ _forall_ [$a $b] => $b -> $b ;;
+__export ShouldSucceed x y;
+1 x :: __forall [t _116] => t -> t ;
+1 y :: __forall [t _116] => _116 -> _116 ;
index a920685..da51fc7 100644 (file)
@@ -1,4 +1,4 @@
---!!! Duplicate class assertion
+-- !!! Duplicate class assertion
 
 module ShouldSucceed where
 
index f9b1457..7f18754 100644 (file)
@@ -3,14 +3,11 @@ tc056.hs:15: Warning:
     Duplicate class assertion `Eq' a' in the context: (Eq' a, Eq' a) =>
 
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Eq'{:Eq' :Eq' doubleeq} Ord'{:Ord' :Ord' lt};
-_instances_
-instance _forall_ [$a] {Eq' $a, Eq' $a} => {Eq' [$a]} = $dEq'0;
-instance {Eq' PrelBase.Int} = $dEq'Int0;
-_declarations_
-1 $dEq'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
-1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
-1 class Eq' $r3R where {doubleeq :: $r3R -> $r3R -> PrelBase.Bool} ;
-1 class {Eq' $r3O}  => Ord' $r3O where {lt :: $r3O -> $r3O -> PrelBase.Bool} ;
-1 f _:_ _forall_ [$a $b] {PrelBase.Num $b, Eq' [$b]} => [$b] -> $a -> PrelBase.Bool ;;
+__export ShouldSucceed f Eq'{doubleeq} Ord'{lt};
+instance {Eq' PrelBase.Int} = _fEq'Int;
+instance __forall [a] {Eq' a, Eq' a} => {Eq' [a]} = _gEq'_91_93;
+1 _fEq'Int :: {Eq' PrelBase.Int} ;
+1 _gEq'_91_93 :: __forall [a] {Eq' a} => {Eq' [a]} ;
+1 class Eq' a where {doubleeq :: a -> a -> PrelBase.Bool} ;
+1 class {Eq' a}  => Ord' a where {lt :: a -> a -> PrelBase.Bool} ;
+1 f :: __forall [t _116] {PrelBase.Num _116, Eq' [_116]} => [_116] -> t -> PrelBase.Bool ;
index 5a23333..92186f1 100644 (file)
@@ -1,12 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed dand f Eq'{:Eq' :Eq' deq};
-_instances_
-instance _forall_ [$a] {Eq' $a} => {Eq' [$a]} = $dEq'0;
-instance {Eq' PrelBase.Int} = $dEq'Int0;
-_declarations_
-1 $dEq'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
-1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
-1 class Eq' $r3W where {deq :: $r3W -> $r3W -> PrelBase.Bool} ;
-1 dand _:_ PrelBase.Bool -> PrelBase.Bool -> PrelBase.Bool ;;
-1 f _:_ _forall_ [$a] {Eq' $a} => $a -> $a -> PrelBase.Bool ;;
+__export ShouldSucceed dand f Eq'{deq};
+instance {Eq' PrelBase.Int} = _fEq'Int;
+instance __forall [a] {Eq' a} => {Eq' [a]} = _gEq'_91_93;
+1 _fEq'Int :: {Eq' PrelBase.Int} ;
+1 _gEq'_91_93 :: __forall [a] {Eq' a} => {Eq' [a]} ;
+1 class Eq' a where {deq :: a -> a -> PrelBase.Bool} ;
+1 dand :: PrelBase.Bool -> PrelBase.Bool -> PrelBase.Bool ;
+1 f :: __forall [a] {Eq' a} => a -> a -> PrelBase.Bool ;
index a4b2af2..e3aad7a 100644 (file)
@@ -1,14 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Eq2{:Eq2 :Eq2 doubleeq} Ord2{:Ord2 :Ord2 lt};
-_instances_
-instance _forall_ [$a] {Eq2 $a, Ord2 $a} => {Eq2 [$a]} = $dEq20;
-instance {Eq2 PrelBase.Int} = $dEq2Int0;
-instance {Ord2 PrelBase.Int} = $dOrd2Int0;
-_declarations_
-1 $dEq20 _:_ _forall_ [$a] {Eq2 $a, Ord2 $a} => {Eq2 [$a]} ;;
-1 $dEq2Int0 _:_ {Eq2 PrelBase.Int} ;;
-1 $dOrd2Int0 _:_ {Ord2 PrelBase.Int} ;;
-1 class Eq2 $r3X where {doubleeq :: $r3X -> $r3X -> PrelBase.Bool} ;
-1 class {Eq2 $r3U}  => Ord2 $r3U where {lt :: $r3U -> $r3U -> PrelBase.Bool} ;
-1 f _:_ _forall_ [$a $b] {PrelBase.Num $b, Eq2 [$b]} => [$b] -> $a -> PrelBase.Bool ;;
+__export ShouldSucceed f Eq2{doubleeq} Ord2{lt};
+instance {Eq2 PrelBase.Int} = _fEq2Int;
+instance {Ord2 PrelBase.Int} = _fOrd2Int;
+instance __forall [a] {Eq2 a, Ord2 a} => {Eq2 [a]} = _gEq2_91_93;
+1 _fEq2Int :: {Eq2 PrelBase.Int} ;
+1 _fOrd2Int :: {Ord2 PrelBase.Int} ;
+1 _gEq2_91_93 :: __forall [a] {Eq2 a, Ord2 a} => {Eq2 [a]} ;
+1 class Eq2 a where {doubleeq :: a -> a -> PrelBase.Bool} ;
+1 class {Eq2 a}  => Ord2 a where {lt :: a -> a -> PrelBase.Bool} ;
+1 f :: __forall [t _116] {PrelBase.Num _116, Eq2 [_116]} => [_116] -> t -> PrelBase.Bool ;
index fdac88b..7a2aa08 100644 (file)
@@ -1,11 +1,8 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Eq2{:Eq2 :Eq2 foo deq};
-_instances_
-instance _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} = $dEq20;
-instance {Eq2 PrelBase.Int} = $dEq2Int0;
-_declarations_
-1 $dEq20 _:_ _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} ;;
-1 $dEq2Int0 _:_ {Eq2 PrelBase.Int} ;;
-1 class Eq2 $r3Q where {foo :: $r3Q -> $r3Q; deq :: $r3Q -> $r3Q -> PrelBase.Bool} ;
-1 f _:_ _forall_ [$a] {PrelBase.Num $a, Eq2 [$a]} => [$a] -> PrelBase.Bool ;;
+__export ShouldSucceed f Eq2{foo deq};
+instance {Eq2 PrelBase.Int} = _fEq2Int;
+instance __forall [a] {Eq2 a} => {Eq2 [a]} = _gEq2_91_93;
+1 _fEq2Int :: {Eq2 PrelBase.Int} ;
+1 _gEq2_91_93 :: __forall [a] {Eq2 a} => {Eq2 [a]} ;
+1 class Eq2 a where {foo :: a -> a; deq :: a -> a -> PrelBase.Bool} ;
+1 f :: __forall [t] {PrelBase.Num t, Eq2 [t]} => [t] -> PrelBase.Bool ;
index f4b6aa3..dfaeb77 100644 (file)
@@ -1,10 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed Eq2{:Eq2 :Eq2 deq};
-_instances_
-instance _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} = $dEq20;
-instance {Eq2 PrelBase.Int} = $dEq2Int0;
-_declarations_
-1 $dEq20 _:_ _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} ;;
-1 $dEq2Int0 _:_ {Eq2 PrelBase.Int} ;;
-1 class Eq2 $r3H where {deq :: $r3H -> $r3H -> PrelBase.Bool} ;
+__export ShouldSucceed Eq2{deq};
+instance {Eq2 PrelBase.Int} = _fEq2Int;
+instance __forall [a] {Eq2 a} => {Eq2 [a]} = _gEq2_91_93;
+1 _fEq2Int :: {Eq2 PrelBase.Int} ;
+1 _gEq2_91_93 :: __forall [a] {Eq2 a} => {Eq2 [a]} ;
+1 class Eq2 a where {deq :: a -> a -> PrelBase.Bool} ;
index ce9b08c..ce5d6cf 100644 (file)
@@ -1,10 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed Eq1{:Eq1 :Eq1 deq};
-_instances_
-instance _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} = $dEq10;
-instance {Eq1 PrelBase.Int} = $dEq1Int0;
-_declarations_
-1 $dEq10 _:_ _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} ;;
-1 $dEq1Int0 _:_ {Eq1 PrelBase.Int} ;;
-1 class Eq1 $r3H where {deq :: $r3H -> $r3H -> PrelBase.Bool} ;
+__export ShouldSucceed Eq1{deq};
+instance {Eq1 PrelBase.Int} = _fEq1Int;
+instance __forall [a] {Eq1 a} => {Eq1 [a]} = _gEq1_91_93;
+1 _fEq1Int :: {Eq1 PrelBase.Int} ;
+1 _gEq1_91_93 :: __forall [a] {Eq1 a} => {Eq1 [a]} ;
+1 class Eq1 a where {deq :: a -> a -> PrelBase.Bool} ;
index 515302d..73966d6 100644 (file)
@@ -1,11 +1,8 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Eq1{:Eq1 :Eq1 deq};
-_instances_
-instance _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} = $dEq10;
-instance {Eq1 PrelBase.Int} = $dEq1Int0;
-_declarations_
-1 $dEq10 _:_ _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} ;;
-1 $dEq1Int0 _:_ {Eq1 PrelBase.Int} ;;
-1 class Eq1 $r3M where {deq :: $r3M -> $r3M -> PrelBase.Bool} ;
-1 f _:_ _forall_ [$a] {Eq1 [$a]} => [$a] -> [$a] -> PrelBase.Bool ;;
+__export ShouldSucceed f Eq1{deq};
+instance {Eq1 PrelBase.Int} = _fEq1Int;
+instance __forall [a] {Eq1 a} => {Eq1 [a]} = _gEq1_91_93;
+1 _fEq1Int :: {Eq1 PrelBase.Int} ;
+1 _gEq1_91_93 :: __forall [a] {Eq1 a} => {Eq1 [a]} ;
+1 class Eq1 a where {deq :: a -> a -> PrelBase.Bool} ;
+1 f :: __forall [t] {Eq1 [t]} => [t] -> [t] -> PrelBase.Bool ;
index b131219..aec818d 100644 (file)
@@ -1,12 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed g Reps{:Reps :Reps f} X{Tag};
-_instances_
-instance {Reps PrelBase.Bool} = $dRepsBool0;
-instance _forall_ [$a] => {Reps (X $a)} = $dRepsX0;
-_declarations_
-1 $dRepsBool0 _:_ {Reps PrelBase.Bool} ;;
-1 $dRepsX0 _:_ _forall_ [$a] => {Reps (X $a)} ;;
-1 class Reps $r3L where {f :: $r3L -> $r3L -> $r3L} ;
-1 data X $r3O = Tag $r3O ;
-1 g _:_ _forall_ [$a] {Reps $a} => $a -> $a ;;
+__export ShouldSucceed g Reps{f} X{Tag};
+instance {Reps PrelBase.Bool} = _fRepsBool;
+instance __forall [q] => {Reps (X q)} = _fRepsX;
+1 _fRepsBool :: {Reps PrelBase.Bool} ;
+1 _fRepsX :: __forall [q] => {Reps (X q)} ;
+1 class Reps r where {f :: r -> r -> r} ;
+1 data X a = Tag a ;
+1 g :: __forall [r] {Reps r} => r -> r ;
index 7e78f40..fea6ee5 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed idb Boolean{FF TT};
-_declarations_
+__export ShouldSucceed idb Boolean{FF TT};
 1 data Boolean = FF |  TT ;
-1 idb _:_ Boolean -> Boolean ;;
+1 idb :: Boolean -> Boolean ;
index b3bc34a..fc69c10 100644 (file)
@@ -1,23 +1,16 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed dfs isCyclic isRecursiveCycle lookupVertex mkDigraph mkEdges mkVertices stronglyConnComp topSort Cycle Digraph(MkDigraph) Edge FlattenedDependencyInfo MaybeErr(Succeeded Failed);
-_instances_
-instance _forall_ [a] => {PrelBase.Eval (Digraph a)} = $dEvalDigraph0;
-instance _forall_ [a b] => {PrelBase.Eval (MaybeErr a b)} = $dEvalMaybeErr0;
-_declarations_
-1 $dEvalDigraph0 _:_ _forall_ [a] => {PrelBase.Eval (Digraph a)} ;;
-1 $dEvalMaybeErr0 _:_ _forall_ [a b] => {PrelBase.Eval (MaybeErr a b)} ;;
+__export ShouldSucceed dfs isCyclic isRecursiveCycle lookupVertex mkDigraph mkEdges mkVertices stronglyConnComp topSort Cycle Digraph{MkDigraph} Edge FlattenedDependencyInfo MaybeErr{Succeeded Failed};
 1 data Digraph vertex = MkDigraph [vertex] ;
 1 data MaybeErr a b = Succeeded a |  Failed b ;
-1 dfs _:_ _forall_ [a] {PrelBase.Eq a} => (a -> [a]) -> ([a], [a]) -> [a] -> ([a], [a]) ;;
-1 isCyclic _:_ _forall_ [a] {PrelBase.Eq a} => [Edge a] -> [a] -> PrelBase.Bool ;;
-1 isRecursiveCycle _:_ _forall_ [a] {PrelBase.Eq a} => Cycle a -> [Edge a] -> PrelBase.Bool ;;
-1 lookupVertex _:_ _forall_ [a b c] {PrelBase.Eq a, PrelBase.Ord b} => FlattenedDependencyInfo a b c -> a -> c ;;
-1 mkDigraph _:_ _forall_ [a] => [a] -> Digraph a ;;
-1 mkEdges _:_ _forall_ [a b c] {PrelBase.Eq a, PrelBase.Ord b} => [a] -> FlattenedDependencyInfo a b c -> [Edge a] ;;
-1 mkVertices _:_ _forall_ [a b c] => FlattenedDependencyInfo a b c -> [a] ;;
-1 stronglyConnComp _:_ _forall_ [a] {PrelBase.Eq a} => [Edge a] -> [a] -> [[a]] ;;
-1 topSort _:_ _forall_ [a] {PrelBase.Eq a} => [Edge a] -> [a] -> MaybeErr [a] [[a]] ;;
+1 dfs :: __forall [a] {PrelBase.Eq a} => (a -> [a]) -> ([a], [a]) -> [a] -> ([a], [a]) ;
+1 isCyclic :: __forall [vertex] {PrelBase.Eq vertex} => [Edge vertex] -> [vertex] -> PrelBase.Bool ;
+1 isRecursiveCycle :: __forall [vertex] {PrelBase.Eq vertex} => Cycle vertex -> [Edge vertex] -> PrelBase.Bool ;
+1 lookupVertex :: __forall [vertex name code] {PrelBase.Eq vertex, PrelBase.Ord name} => FlattenedDependencyInfo vertex name code -> vertex -> code ;
+1 mkDigraph :: __forall [vertex] => [vertex] -> Digraph vertex ;
+1 mkEdges :: __forall [vertex name code] {PrelBase.Eq vertex, PrelBase.Ord name} => [vertex] -> FlattenedDependencyInfo vertex name code -> [Edge vertex] ;
+1 mkVertices :: __forall [vertex name code] => FlattenedDependencyInfo vertex name code -> [vertex] ;
+1 stronglyConnComp :: __forall [vertex] {PrelBase.Eq vertex} => [Edge vertex] -> [vertex] -> [[vertex]] ;
+1 topSort :: __forall [vertex] {PrelBase.Eq vertex} => [Edge vertex] -> [vertex] -> MaybeErr [vertex] [[vertex]] ;
 1 type Cycle vertex = [vertex] ;
 1 type Edge vertex = (vertex, vertex) ;
 1 type FlattenedDependencyInfo vertex name code = [(vertex, Set.Set name, Set.Set name, code)] ;
index babf6d9..8189323 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Pair{MkPair};
-_declarations_
-1 data Pair $r3x $r3y = MkPair $r3x $r3y ;
-1 f _:_ _forall_ [$a :: (* -> *) $b $c] {PrelBase.Monad $a} => $a (Pair $b $c) -> $a $c ;;
+__export ShouldSucceed f Pair{MkPair};
+1 data Pair a b = MkPair a b ;
+1 f :: __forall [a b] => [Pair a b] -> [b] ;
index 079db7f..c2e1573 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ _forall_ [$a] => [$a] -> [$a] ;;
+__export ShouldSucceed f;
+1 f :: __forall [t] => [t] -> [t] ;
index 6b96b5c..e3c8be1 100644 (file)
@@ -1,11 +1,8 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed B{X Y} T{D C};
-_instances_
-instance _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (B $a)} = $dEqB0;
-instance _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (T $a)} = $dEqT0;
-_declarations_
-1 $dEqB0 _:_ _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (B $a)} ;;
-1 $dEqT0 _:_ _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (T $a)} ;;
-1 data B $r40 = X |  Y $r40 ;
-1 data T $r44 = D (B $r44) |  C ;
+__export ShouldSucceed B{X Y} T{D C};
+instance __forall [b] {PrelBase.Eq b} => {PrelBase.Eq (B b)} = _fEqB;
+instance __forall [a] {PrelBase.Eq a} => {PrelBase.Eq (T a)} = _fEqT;
+1 _fEqB :: __forall [b] {PrelBase.Eq b} => {PrelBase.Eq (B b)} ;
+1 _fEqT :: __forall [a] {PrelBase.Eq a} => {PrelBase.Eq (T a)} ;
+1 data B b = X |  Y b ;
+1 data T a = D (B a) |  C ;
index d6c4003..681c176 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed x y ys;
-_declarations_
-1 x _:_ PrelBase.Char ;;
-1 y _:_ PrelBase.Char ;;
-1 ys _:_ [PrelBase.Char] ;;
+__export ShouldSucceed x y ys;
+1 x :: PrelBase.Char ;
+1 y :: PrelBase.Char ;
+1 ys :: [PrelBase.Char] ;
index 7e78f40..fea6ee5 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed idb Boolean{FF TT};
-_declarations_
+__export ShouldSucceed idb Boolean{FF TT};
 1 data Boolean = FF |  TT ;
-1 idb _:_ Boolean -> Boolean ;;
+1 idb :: Boolean -> Boolean ;
index 079db7f..c2e1573 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f;
-_declarations_
-1 f _:_ _forall_ [$a] => [$a] -> [$a] ;;
+__export ShouldSucceed f;
+1 f :: __forall [t] => [t] -> [t] ;
index 6b96b5c..e3c8be1 100644 (file)
@@ -1,11 +1,8 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed B{X Y} T{D C};
-_instances_
-instance _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (B $a)} = $dEqB0;
-instance _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (T $a)} = $dEqT0;
-_declarations_
-1 $dEqB0 _:_ _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (B $a)} ;;
-1 $dEqT0 _:_ _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (T $a)} ;;
-1 data B $r40 = X |  Y $r40 ;
-1 data T $r44 = D (B $r44) |  C ;
+__export ShouldSucceed B{X Y} T{D C};
+instance __forall [b] {PrelBase.Eq b} => {PrelBase.Eq (B b)} = _fEqB;
+instance __forall [a] {PrelBase.Eq a} => {PrelBase.Eq (T a)} = _fEqT;
+1 _fEqB :: __forall [b] {PrelBase.Eq b} => {PrelBase.Eq (B b)} ;
+1 _fEqT :: __forall [a] {PrelBase.Eq a} => {PrelBase.Eq (T a)} ;
+1 data B b = X |  Y b ;
+1 data T a = D (B a) |  C ;
index 5bf422e..493e967 100644 (file)
@@ -1,4 +1,4 @@
---!!! scoping in list comprehensions right way 'round?
+-- !!! scoping in list comprehensions right way 'round?
 -- a bug reported by Jon Hill
 --
 module ShouldSucceed where
index 39e0613..c0cf92a 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed x xs;
-_declarations_
-1 x _:_ [[PrelBase.Bool]] ;;
-1 xs _:_ [PrelBase.Bool] ;;
+__export ShouldSucceed x xs;
+1 x :: [[PrelBase.Bool]] ;
+1 xs :: [PrelBase.Bool] ;
index 45e4d11..c4f6c4e 100644 (file)
@@ -1,4 +1,4 @@
---!!! make sure context of EQ is minimised in interface file.
+-- !!! make sure context of EQ is minimised in interface file.
 --
 module ShouldSucceed where
 
index f162b32..d4a3c4b 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed EQ{:EQ :EQ ===} NUM{ONE TWO} ORD{:ORD :ORD};
-_declarations_
-1 class {ORD $r3B, PrelBase.Show $r3B}  => EQ $r3B where {=== :: $r3B -> $r3B -> PrelBase.Bool} ;
-1 class {PrelBase.Num $r3F}  => ORD $r3F ;
+__export ShouldSucceed EQ{===} NUM{ONE TWO} ORD;
+1 class {ORD a, PrelBase.Show a}  => EQ a where {=== :: a -> a -> PrelBase.Bool} ;
+1 class {PrelBase.Num a}  => ORD a ;
 1 data NUM = ONE |  TWO ;
index 4625f65..de5e748 100644 (file)
@@ -1,4 +1,4 @@
---!!! instance decls with no binds
+-- !!! instance decls with no binds
 --
 module ShouldFail where
 
index cb57d73..4dd15bb 100644 (file)
@@ -1,15 +1,7 @@
-tc078.hs:7: Warning:
-    No explicit method nor default method for `=='
-    in an instance declaration for `Eq'
-
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldFail Bar{MkBar};
-_instances_
-instance _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (Bar $a)} = $dEqBar0;
-instance _forall_ [$a] {PrelBase.Ord $a} => {PrelBase.Ord (Bar $a)} = $dOrdBar0;
-_declarations_
-1 $dEqBar0 _:_ _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Eq (Bar $a)} ;;
-1 $dOrdBar0 _:_ _forall_ [$a] {PrelBase.Ord $a, PrelBase.Eq (Bar $a)} => {PrelBase.Ord (Bar $a)} ;;
-1 data Bar $r3x = MkBar PrelBase.Int $r3x ;
+__export ShouldFail Bar{MkBar};
+instance __forall [a] {PrelBase.Eq a} => {PrelBase.Eq (Bar a)} = _fEqBar;
+instance __forall [a] {PrelBase.Ord a} => {PrelBase.Ord (Bar a)} = _fOrdBar;
+1 _fEqBar :: __forall [a] {PrelBase.Eq a} => {PrelBase.Eq (Bar a)} ;
+1 _fOrdBar :: __forall [a] {PrelBase.Ord a, PrelBase.Eq (Bar a)} => {PrelBase.Ord (Bar a)} ;
+1 data Bar a = MkBar PrelBase.Int a ;
index 99a73cc..db07ad1 100644 (file)
@@ -1,6 +1,6 @@
---!!! small class decl with local polymorphism;
---!!! "easy" to check default methods and such...
---!!! (this is the example given in TcClassDcl)
+-- !!! small class decl with local polymorphism;
+-- !!! "easy" to check default methods and such...
+-- !!! (this is the example given in TcClassDcl)
 --
 module ShouldSucceed where
 
index 56b5e08..6e89914 100644 (file)
@@ -1,12 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed Foo{:Foo :Foo op2 op1};
-_instances_
-instance _forall_ [$a] {Foo $a} => {Foo [$a]} = $dFoo0;
-instance {Foo PrelBase.Int} = $dFooInt0;
-_declarations_
-1 $dFoo0 _:_ _forall_ [$a] {Foo $a} => {Foo [$a]} ;;
-1 $dFooInt0 _:_ {Foo PrelBase.Int} ;;
-1 $mop1 _:_ _forall_ [$a] {Foo $a} => $a -> PrelBase.Bool ;;
-1 $mop2 _:_ _forall_ [$a] {Foo $a} => _forall_ [$b] {PrelBase.Ord $b} => $a -> $b -> $b -> $b ;;
-1 class Foo $r3z where {op2 = :: _forall_ [$r3B] {PrelBase.Ord $r3B} => $r3z -> $r3B -> $r3B -> $r3B; op1 = :: $r3z -> PrelBase.Bool} ;
+__export ShouldSucceed Foo{op2 op1};
+instance {Foo PrelBase.Int} = _fFooInt;
+instance __forall [a] {Foo a} => {Foo [a]} = _gFoo_91_93;
+1 _fFooInt :: {Foo PrelBase.Int} ;
+1 _gFoo_91_93 :: __forall [a] {Foo a} => {Foo [a]} ;
+1 _mop1 :: __forall [a] {Foo a} => a -> PrelBase.Bool ;
+1 _mop2 :: __forall [a] {Foo a} => __forall [b] {PrelBase.Ord b} => a -> b -> b -> b ;
+1 class Foo a where {op2 = :: __forall [b] {PrelBase.Ord b} => a -> b -> b -> b; op1 = :: a -> PrelBase.Bool} ;
index 549b1e1..b389bdd 100644 (file)
@@ -1,22 +1,19 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed charToInt lines' seperatedBy span' strToInt whiteSpace Parse{:Parse :Parse forced parse parseType parseLine parseFile};
-_instances_
-instance _forall_ [$a] {Parse $a} => {Parse [$a]} = $dParse0;
-instance {Parse PrelBase.Char} = $dParseChar0;
-instance {Parse PrelBase.Int} = $dParseInt0;
-_declarations_
-1 $dParse0 _:_ _forall_ [$a] {Parse $a} => {Parse [$a]} ;;
-1 $dParseChar0 _:_ {Parse PrelBase.Char} ;;
-1 $dParseInt0 _:_ {Parse PrelBase.Int} ;;
-1 $mforced _:_ _forall_ [$a] {Parse $a} => $a -> PrelBase.Bool ;;
-1 $mparse _:_ _forall_ [$a] {Parse $a} => PrelBase.String -> ($a, PrelBase.String) ;;
-1 $mparseFile _:_ _forall_ [$a] {Parse $a} => PrelBase.String -> [$a] ;;
-1 $mparseLine _:_ _forall_ [$a] {Parse $a} => PrelBase.String -> $a ;;
-1 charToInt _:_ PrelBase.Char -> PrelBase.Int ;;
-1 class Parse $r5B where {forced = :: $r5B -> PrelBase.Bool; parse = :: PrelBase.String -> ($r5B, PrelBase.String); parseType :: PrelBase.String -> ($r5B, PrelBase.String); parseLine = :: PrelBase.String -> $r5B; parseFile = :: PrelBase.String -> [$r5B]} ;
-1 lines' _:_ [PrelBase.Char] -> [[PrelBase.Char]] ;;
-1 seperatedBy _:_ PrelBase.Char -> PrelBase.String -> [PrelBase.String] ;;
-1 span' _:_ _forall_ [$a] => ($a -> PrelBase.Bool) -> [$a] -> ([$a], [$a]) ;;
-1 strToInt _:_ PrelBase.String -> PrelBase.Int ;;
-1 whiteSpace _:_ PrelBase.String -> PrelBase.String ;;
+__export ShouldSucceed charToInt lines' seperatedBy span' strToInt whiteSpace Parse{forced parse parseType parseLine parseFile};
+instance {Parse PrelBase.Char} = _fParseChar;
+instance {Parse PrelBase.Int} = _fParseInt;
+instance __forall [a] {Parse a} => {Parse [a]} = _gParse_91_93;
+1 _fParseChar :: {Parse PrelBase.Char} ;
+1 _fParseInt :: {Parse PrelBase.Int} ;
+1 _gParse_91_93 :: __forall [a] {Parse a} => {Parse [a]} ;
+1 _mforced :: __forall [a] {Parse a} => a -> PrelBase.Bool ;
+1 _mparse :: __forall [a] {Parse a} => PrelBase.String -> (a, PrelBase.String) ;
+1 _mparseFile :: __forall [a] {Parse a} => PrelBase.String -> [a] ;
+1 _mparseLine :: __forall [a] {Parse a} => PrelBase.String -> a ;
+1 charToInt :: PrelBase.Char -> PrelBase.Int ;
+1 class Parse a where {forced = :: a -> PrelBase.Bool; parse = :: PrelBase.String -> (a, PrelBase.String); parseType :: PrelBase.String -> (a, PrelBase.String); parseLine = :: PrelBase.String -> a; parseFile = :: PrelBase.String -> [a]} ;
+1 lines' :: [PrelBase.Char] -> [[PrelBase.Char]] ;
+1 seperatedBy :: PrelBase.Char -> PrelBase.String -> [PrelBase.String] ;
+1 span' :: __forall [a] => (a -> PrelBase.Bool) -> [a] -> ([a], [a]) ;
+1 strToInt :: PrelBase.String -> PrelBase.Int ;
+1 whiteSpace :: PrelBase.String -> PrelBase.String ;
index 6590550..a01eaa9 100644 (file)
@@ -1,4 +1,4 @@
---!!! an example Simon made up
+-- !!! an example Simon made up
 --
 module ShouldSucceed where
 
index 1d22d27..249ebff 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f f2 f3;
-_declarations_
-1 f _:_ _forall_ [$a] {PrelBase.Ord $a, PrelBase.Num $a} => $a -> ($a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;;
-1 f2 _:_ _forall_ [$a] {PrelBase.Ord $a, PrelBase.Num $a} => $a -> ($a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;;
-1 f3 _:_ _forall_ [$a] {PrelBase.Ord $a, PrelBase.Num $a} => $a -> ($a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;;
+__export ShouldSucceed f f2 f3;
+1 f :: __forall [a] {PrelBase.Ord a, PrelBase.Num a} => a -> (a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;
+1 f2 :: __forall [a] {PrelBase.Ord a, PrelBase.Num a} => a -> (a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;
+1 f3 :: __forall [a] {PrelBase.Ord a, PrelBase.Num a} => a -> (a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;
index 07df34b..8ef70af 100644 (file)
@@ -1,4 +1,4 @@
---!!! tc082: an instance for functions
+-- !!! tc082: an instance for functions
 --
 module ShouldSucceed where
 
index e81df92..3823a79 100644 (file)
@@ -1,9 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f Normal{:Normal :Normal normal};
-_instances_
-instance _forall_ [$a $b] => {Normal ($a -> $b)} = $dNormal0;
-_declarations_
-1 $dNormal0 _:_ _forall_ [$a $b] => {Normal ($a -> $b)} ;;
-1 class Normal $r3D where {normal :: $r3D -> PrelBase.Bool} ;
-1 f _:_ _forall_ [$a] => $a -> PrelBase.Bool ;;
+__export ShouldSucceed f Normal{normal};
+instance __forall [a b] => {Normal (a -> b)} = _gNormalmg;
+1 _gNormalmg :: __forall [a b] => {Normal (a -> b)} ;
+1 class Normal a where {normal :: a -> PrelBase.Bool} ;
+1 f :: __forall [t] => t -> PrelBase.Bool ;
index 70a6203..4e91922 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed f g h;
-_declarations_
-1 f _:_ _forall_ [$a] => PrelBase.Int -> $a -> PrelBase.Int ;;
-1 g _:_ _forall_ [$a $b] {PrelBase.Num $a} => PrelBase.Bool -> $a -> $b -> $a ;;
-1 h _:_ _forall_ [$a] => $a -> PrelBase.Int -> PrelBase.Int ;;
+__export ShouldSucceed f g h;
+1 f :: __forall [b] => PrelBase.Int -> b -> PrelBase.Int ;
+1 g :: __forall [a b] {PrelBase.Num a} => PrelBase.Bool -> a -> b -> a ;
+1 h :: __forall [b] => b -> PrelBase.Int -> PrelBase.Int ;
index 8c0b8c7..958c2b0 100644 (file)
@@ -1,6 +1,6 @@
 {-# OPTIONS -fglasgow-exts #-}
---!!! From a bug report from Satnam.
---!!! To do with re-exporting importees from PreludeGla* modules.
+-- !!! From a bug report from Satnam.
+-- !!! To do with re-exporting importees from PreludeGla* modules.
 module ShouldSucceed ( module IOExts, module PrelGHC ) where
 
 --OLD:   import GlaExts
index cdd95a7..6fa0afb 100644 (file)
@@ -1,9 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-IOExts boundsIOArray freezeIOArray newIOArray newIORef performGC readIOArray readIORef trace unsafeIOToST unsafePtrEq writeIOArray writeIORef IOArray IORef;
-PrelGHC *# *## **## +# +## -# -## /# /## /=# /=## <# <## <=# <=## ==# ==## ># >## >=# >=## acosDouble# acosFloat# addr2Int# addr2Integer# and# asinDouble# asinFloat# assert atanDouble# atanFloat# catch# chr# cmpInteger# cosDouble# cosFloat# coshDouble# coshFloat# deRefStablePtr# decodeDouble# decodeFloat# delay# divideFloat# double2Float# double2Int# encodeDouble# encodeFloat# eqAddr# eqChar# eqFloat# eqWord# expDouble# expFloat# float2Double# float2Int# fork# geAddr# geChar# geFloat# geWord# gtAddr# gtChar# gtFloat# gtWord# iShiftL# iShiftRA# iShiftRL# indexAddrArray# indexAddrOffAddr# indexAddrOffForeignObj# indexArray# indexCharArray# indexCharOffAddr# indexCharOffForeignObj# indexDoubleArray# indexDoubleOffAddr# indexDoubleOffForeignObj# indexFloatArray# indexFloatOffAddr# indexFloatOffForeignObj# indexInt64Array# indexInt64OffAddr# indexInt64OffForeignObj# indexIntArray# indexIntOffAddr# indexIntOffForeignObj# indexStablePtrArray# indexStablePtrOffAddr# indexStablePtrOffForeignObj# indexWord64Array# indexWord64OffAddr# indexWord64OffForeignObj# indexWordArray# indexWordOffAddr# indexWordOffForeignObj# int2Addr# int2Double# int2Float# int2Integer# int2Word# int64ToInteger# integer2Int# integer2Word# integerToInt64# integerToWord64# killThread# leAddr# leChar# leFloat# leWord# logDouble# logFloat# ltAddr# ltChar# ltFloat# ltWord# makeForeignObj# makeStablePtr# minusFloat# minusInteger# neAddr# neChar# neFloat# neWord# negateDouble# negateFloat# negateInt# negateInteger# newAddrArray# newArray# newCharArray# newDoubleArray# newFloatArray# newIntArray# newMVar# newMutVar# newStablePtrArray# newWordArray# not# or# ord# par# parAt# parAtAbs# parAtForNow# parAtRel# parGlobal# parLocal# plusFloat# plusInteger# powerFloat# putMVar# quotInt# quotRemInteger# quotWord# raise# readAddrArray# readArray# readCharArray# readDoubleArray# readFloatArray# readInt64Array# readIntArray# readMutVar# readStablePtrArray# readWord64Array# readWordArray# realWorld# reallyUnsafePtrEquality# remInt# remWord# sameMVar# sameMutVar# sameMutableArray# sameMutableByteArray# seq# shiftL# shiftRA# shiftRL# sinDouble# sinFloat# sinhDouble# sinhFloat# sizeofByteArray# sizeofMutableByteArray# sqrtDouble# sqrtFloat# takeMVar# tanDouble# tanFloat# tanhDouble# tanhFloat# timesFloat# timesInteger# unsafeCoerce# unsafeFreezeArray# unsafeFreezeByteArray# waitRead# waitWrite# word2Int# word2Integer# word64ToInteger# writeAddrArray# writeAddrOffAddr# writeArray# writeCharArray# writeCharOffAddr# writeDoubleArray# writeDoubleOffAddr# writeFloatArray# writeFloatOffAddr# writeForeignObj# writeForeignObjOffAddr# writeInt64Array# writeInt64OffAddr# writeIntArray# writeIntOffAddr# writeMutVar# writeStablePtrArray# writeStablePtrOffAddr# writeWord64Array# writeWord64OffAddr# writeWordArray# writeWordOffAddr# xor# -> Addr# All Array# ByteArray# CCallable CReturnable Char# Double# Float# ForeignObj# Int# Int64# MVar# MutVar# MutableArray# MutableByteArray# RealWorld StablePtr# State# ThreadId# Void Word# Word64#;
-PrelHandle hConnectTo hGetEcho hIsTerminalDevice hSetEcho openFileEx IOModeEx{BinaryMode TextMode};
-PrelIOBase fixIO unsafeInterleaveIO unsafePerformIO;
-_declarations_
+__export IOExts boundsIOArray freezeIOArray newIOArray newIORef performGC readIOArray readIORef thawIOArray trace unsafePtrEq writeIOArray writeIORef IOArray IORef;
+__export PrelGHC *# *## **## +# +## -# -## /## /=# /=## <# <## <=# <=## ==# ==## ># >## >=# >=## acosDouble# acosFloat# addr2Int# addr2Integer# and# asinDouble# asinFloat# assert atanDouble# atanFloat# catch# chr# cmpInteger# cosDouble# cosFloat# coshDouble# coshFloat# deRefStablePtr# deRefWeak# decodeDouble# decodeFloat# delay# divideFloat# double2Float# double2Int# encodeDouble# encodeFloat# eqAddr# eqChar# eqFloat# eqStablePtr# eqWord# expDouble# expFloat# float2Double# float2Int# fork# geAddr# geChar# geFloat# geWord# gtAddr# gtChar# gtFloat# gtWord# iShiftL# iShiftRA# iShiftRL# indexAddrArray# indexAddrOffAddr# indexAddrOffForeignObj# indexArray# indexCharArray# indexCharOffAddr# indexCharOffForeignObj# indexDoubleArray# indexDoubleOffAddr# indexDoubleOffForeignObj# indexFloatArray# indexFloatOffAddr# indexFloatOffForeignObj# indexInt64Array# indexInt64OffAddr# indexInt64OffForeignObj# indexIntArray# indexIntOffAddr# indexIntOffForeignObj# indexStablePtrArray# indexStablePtrOffAddr# indexStablePtrOffForeignObj# indexWord64Array# indexWord64OffAddr# indexWord64OffForeignObj# indexWordArray# indexWordOffAddr# indexWordOffForeignObj# int2Addr# int2Double# int2Float# int2Integer# int2Word# int64ToInteger# integer2Int# integer2Word# integerToInt64# integerToWord64# isEmptyMVar# killThread# leAddr# leChar# leFloat# leWord# logDouble# logFloat# ltAddr# ltChar# ltFloat# ltWord# makeForeignObj# makeStablePtr# minusFloat# minusInteger# mkWeak# neAddr# neChar# neFloat# neWord# negateDouble# negateFloat# negateInt# negateInteger# newAddrArray# newArray# newCharArray# newDoubleArray# newFloatArray# newIntArray# newMVar# newMutVar# newStablePtrArray# newWordArray# not# or# ord# par# parAt# parAtAbs# parAtForNow# parAtRel# parGlobal# parLocal# plusFloat# plusInteger# powerFloat# putMVar# quotInt# quotRemInteger# quotWord# raise# readAddrArray# readArray# readCharArray# readDoubleArray# readFloatArray# readInt64Array# readIntArray# readMutVar# readStablePtrArray# readWord64Array# readWordArray# realWorld# reallyUnsafePtrEquality# remInt# remWord# sameMVar# sameMutVar# sameMutableArray# sameMutableByteArray# seq# shiftL# shiftRL# sinDouble# sinFloat# sinhDouble# sinhFloat# sizeofByteArray# sizeofMutableByteArray# sqrtDouble# sqrtFloat# takeMVar# tanDouble# tanFloat# tanhDouble# tanhFloat# timesFloat# timesInteger# unsafeCoerce# unsafeFreezeArray# unsafeFreezeByteArray# waitRead# waitWrite# word2Int# word2Integer# word64ToInteger# writeAddrArray# writeAddrOffAddr# writeArray# writeCharArray# writeCharOffAddr# writeDoubleArray# writeDoubleOffAddr# writeFloatArray# writeFloatOffAddr# writeForeignObj# writeForeignObjOffAddr# writeInt64Array# writeInt64OffAddr# writeIntArray# writeIntOffAddr# writeMutVar# writeStablePtrArray# writeStablePtrOffAddr# writeWord64Array# writeWord64OffAddr# writeWordArray# writeWordOffAddr# xor# -> Addr# All Array# ByteArray# CCallable CReturnable Char# Double# Float# ForeignObj# Int# Int64# MVar# MutVar# MutableArray# MutableByteArray# RealWorld StablePtr# State# ThreadId# Weak# Word# Word64#;
+__export PrelHandle hConnectTo hGetEcho hIsTerminalDevice hSetEcho openFileEx IOModeEx{BinaryMode TextMode};
+__export PrelIOBase fixIO unsafeInterleaveIO unsafePerformIO;
 1 data FooData = FooData ;
 1 type FooType = PrelBase.Int ;
index 1f0f427..2db3b70 100644 (file)
@@ -25,7 +25,7 @@ SPJ note: the type signature on "multiply" should be
 module ShouldSucceed( Group, Ring ) where
 
 import qualified Prelude( Ord(..), Eq(..), Num(..) )
-import Prelude hiding( Ord(..), Eq(..), Num(..), MonadZero( zero ) )
+import Prelude hiding( Ord(..), Eq(..), Num(..) )
 
 class Group a where
   compare     :: a -> a -> Prelude.Ordering
@@ -50,7 +50,7 @@ class Group a where
 class (Group a) => Ring a where
   (*) :: a -> a -> a
   (*) a b = multiply a b
-          where multiply :: Group a => a -> a ->a 
+          where multiply :: Group b => b -> b -> b
                 multiply a b
                   = case (compare a zero) of
                       EQ -> zero
index 55c52c1..cbbee48 100644 (file)
@@ -1,9 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed Group Ring;
-_declarations_
-1 $m* _:_ _forall_ [$a] {Ring $a} => $a -> $a -> $a ;;
-1 $mone _:_ _forall_ [$a] {Group $a} => $a ;;
-1 $mzero _:_ _forall_ [$a] {Group $a} => $a ;;
-1 class Group $r7i where {one = :: $r7i; zero = :: $r7i; - :: $r7i -> $r7i -> $r7i; + :: $r7i -> $r7i -> $r7i; fromInteger :: PrelBase.Integer -> $r7i; compare :: $r7i -> $r7i -> PrelBase.Ordering} ;
-1 class {Group $r6Z}  => Ring $r6Z where {* = :: $r6Z -> $r6Z -> $r6Z} ;
+__export ShouldSucceed Group Ring;
+1 _mone :: __forall [a] {Group a} => a ;
+1 _mzero :: __forall [a] {Group a} => a ;
+1 _nt :: __forall [a] {Ring a} => a -> a -> a ;
+1 class Group a where {one = :: a; zero = :: a; - :: a -> a -> a; + :: a -> a -> a; fromInteger :: PrelBase.Integer -> a; compare :: a -> a -> PrelBase.Ordering} ;
+1 class {Group a}  => Ring a where {* = :: a -> a -> a} ;
index 8850108..24e3414 100644 (file)
@@ -1,12 +1,10 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed check insertMany out pqSort toOrderedList PriorityQueue{:PriorityQueue :PriorityQueue splitMin meld insert single empty} SeqView{Null Cons};
-_declarations_
-1 $minsert _:_ _forall_ [$a :: (* -> *)] {PriorityQueue $a} => _forall_ [$b] {PrelBase.Ord $b} => $b -> $a $b -> $a $b ;;
-1 check _:_ _forall_ [$a :: (* -> *)] {PriorityQueue $a} => (_forall_ [$b] {PrelBase.Ord $b} => $a $b) -> PrelIOBase.IO PrelBase.() ;;
-1 class PriorityQueue $r4c :: (* -> *) where {splitMin :: _forall_ [$r4e] {PrelBase.Ord $r4e} => $r4c $r4e -> SeqView $r4c $r4e; meld :: _forall_ [$r4h] {PrelBase.Ord $r4h} => $r4c $r4h -> $r4c $r4h -> $r4c $r4h; insert = :: _forall_ [$r4j] {PrelBase.Ord $r4j} => $r4j -> $r4c $r4j -> $r4c $r4j; single :: _forall_ [$r4m] {PrelBase.Ord $r4m} => $r4m -> $r4c $r4m; empty :: _forall_ [$r4o] {PrelBase.Ord $r4o} => $r4c $r4o} ;
-1 data SeqView $r4v :: (* -> *) $r4w = Null |  Cons $r4w ($r4v $r4w) ;
-1 insertMany _:_ _forall_ [$a $b :: (* -> *)] {PrelBase.Ord $a, PriorityQueue $b} => [$a] -> $b $a -> $b $a ;;
-1 out _:_ _forall_ [$a] {PrelBase.Num $a} => [$a] -> PrelIOBase.IO PrelBase.() ;;
-1 pqSort _:_ _forall_ [$a :: (* -> *) $b] {PriorityQueue $a, PrelBase.Ord $b} => $a $b -> [$b] -> [$b] ;;
-1 toOrderedList _:_ _forall_ [$a :: (* -> *) $b] {PrelBase.Ord $b, PriorityQueue $a} => $a $b -> [$b] ;;
+__export ShouldSucceed check insertMany out pqSort toOrderedList PriorityQueue{splitMin meld insert single empty} SeqView{Null Cons};
+1 _minsert :: __forall [q :: (* -> *)] {PriorityQueue q} => __forall [a] {PrelBase.Ord a} => a -> q a -> q a ;
+1 check :: __forall [q :: (* -> *)] {PriorityQueue q} => (__forall [a] {PrelBase.Ord a} => q a) -> PrelIOBase.IO PrelBase.() ;
+1 class PriorityQueue q :: (* -> *) where {splitMin :: __forall [a] {PrelBase.Ord a} => q a -> SeqView q a; meld :: __forall [a] {PrelBase.Ord a} => q a -> q a -> q a; insert = :: __forall [a] {PrelBase.Ord a} => a -> q a -> q a; single :: __forall [a] {PrelBase.Ord a} => a -> q a; empty :: __forall [a] {PrelBase.Ord a} => q a} ;
+1 data SeqView t :: (* -> *) a = Null |  Cons a (t a) ;
+1 insertMany :: __forall [a q :: (* -> *)] {PrelBase.Ord a, PriorityQueue q} => [a] -> q a -> q a ;
+1 out :: __forall [a] {PrelBase.Num a} => [a] -> PrelIOBase.IO PrelBase.() ;
+1 pqSort :: __forall [q :: (* -> *) a] {PriorityQueue q, PrelBase.Ord a} => q a -> [a] -> [a] ;
+1 toOrderedList :: __forall [q :: (* -> *) a] {PrelBase.Ord a, PriorityQueue q} => q a -> [a] ;
index 87a99d9..d61bd1c 100644 (file)
@@ -1,8 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-_instances_
-instance _forall_ [$a $b] {PrelBase.Eq $b} => {PrelBase.Eq ($a -> $b)} = $dEq0;
-instance _forall_ [$a $b] {PrelBase.Num $b} => {PrelBase.Num ($a -> $b)} = $dNum0;
-_declarations_
-1 $dEq0 _:_ _forall_ [$a $b] {PrelBase.Eq $b} => {PrelBase.Eq ($a -> $b)} ;;
-1 $dNum0 _:_ _forall_ [$a $b] {PrelBase.Num $b, PrelBase.Eq ($a -> $b), PrelBase.Show ($a -> $b)} => {PrelBase.Num ($a -> $b)} ;;
+instance __forall [a b] {PrelBase.Eq b} => {PrelBase.Eq (a -> b)} = _gEqmg;
+instance __forall [a b] {PrelBase.Num b} => {PrelBase.Num (a -> b)} = _gNummg;
+1 _gEqmg :: __forall [a b] {PrelBase.Eq b} => {PrelBase.Eq (a -> b)} ;
+1 _gNummg :: __forall [a b] {PrelBase.Num b, PrelBase.Eq (a -> b), PrelBase.Show (a -> b)} => {PrelBase.Num (a -> b)} ;
index ff78722..1bbb4ab 100644 (file)
@@ -1,4 +1,4 @@
---!!! Stress test for type checker
+-- !!! Stress test for type checker
 
 module ShouldSucceed where
 
index 8ef36a6..5e3cf97 100644 (file)
@@ -1,38 +1,36 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed absAnd absIf bottom f f_rec f_rec0 f_rec1 f_rec2 fac fac_rec fac_rec0 fac_rec1 fac_rec2 fac_rec3 fac_rec4 g g_rec g_rec0 g_rec1 g_rec2 g_rec3 g_rec4 g_rec5 g_rec6 g_rec7 g_rec8 head one s_1_0 s_2_0 s_2_1 s_3_0 s_3_1 s_3_2;
-_declarations_
-1 absAnd _:_ _forall_ [$a] => $a -> $a -> $a ;;
-1 absIf _:_ _forall_ [$a $b $c] => $c -> $a -> $b -> $c ;;
-1 bottom _:_ _forall_ [$a] => [$a] -> $a ;;
-1 f _:_ _forall_ [$a] => $a -> $a ;;
-1 f_rec _:_ _forall_ [$a $b] => ($b -> $a) -> $b -> $a ;;
-1 f_rec0 _:_ _forall_ [$a] => $a -> $a ;;
-1 f_rec1 _:_ _forall_ [$a] => $a -> $a ;;
-1 f_rec2 _:_ _forall_ [$a] => $a -> $a ;;
-1 fac _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k] => ($a, ($i, ($b, ($c, ($d, $e)))), ($j, ($b, ($c, ($d, $e))), ($f, ($c, ($d, $e)), ($g, ($d, $e), ($h, $e, $e))))) -> ($k, ($i, ($b, ($c, ($d, $e))))) -> $a ;;
-1 fac_rec _:_ _forall_ [$a $b $c $d $e] => ($d -> $b -> $a) -> ($c, $b, $d) -> ($e, $b) -> $c ;;
-1 fac_rec0 _:_ _forall_ [$a] => $a -> $a -> $a ;;
-1 fac_rec1 _:_ _forall_ [$a $b $c] => ($a, $b, $b) -> ($c, $b) -> $a ;;
-1 fac_rec2 _:_ _forall_ [$a $b $c $d $e] => ($a, ($c, $b), ($d, $b, $b)) -> ($e, ($c, $b)) -> $a ;;
-1 fac_rec3 _:_ _forall_ [$a $b $c $d $e $f $g] => ($a, ($e, ($b, $c)), ($f, ($b, $c), ($d, $c, $c))) -> ($g, ($e, ($b, $c))) -> $a ;;
-1 fac_rec4 _:_ _forall_ [$a $b $c $d $e $f $g $h $i] => ($a, ($g, ($b, ($c, $d))), ($h, ($b, ($c, $d)), ($e, ($c, $d), ($f, $d, $d)))) -> ($i, ($g, ($b, ($c, $d)))) -> $a ;;
-1 g _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p $q $r $s $t $u $v $w $x $y $z $tq $tr $ts $tt $tu $tv $tw $tx $ty $tz $tA $tB $tC $tD $tE $tF $tG $tH $tI $tJ $tK $tL $tM $tN $tO $tP $tQ $tR $tS $tT $tU $tV $tW $tX $tY $tZ $t10 $t11 $t12 $t13 $t14 $t15 $t16 $t17 $t18 $t19 $t1a $t1b $t1c $t1d $t1e $t1f $t1g $t1h $t1i $t1j $t1k $t1l $t1m $t1n $t1o $t1p $t1q $t1r $t1s $t1t $t1u $t1v $t1w $t1x $t1y $t1z $t1A $t1B $t1C $t1D $t1E $t1F $t1G $t1H $t1I $t1J $t1K $t1L $t1M $t1N $t1O $t1P $t1Q $t1R $t1S $t1T $t1U $t1V $t1W $t1X $t1Y $t1Z $t20 $t21 $t22 $t23 $t24 $t25 $t26 $t27 $t28 $t29 $t2a $t2b $t2c $t2d $t2e $t2f $t2g $t2h $t2i $t2j $t2k $t2l $t2m $t2n $t2o $t2p $t2q $t2r $t2s $t2t $t2u $t2v $t2w $t2x $t2y $t2z $t2A $t2B $t2C $t2D $t2E $t2F $t2G $t2H $t2I $t2J $t2K $t2L $t2M $t2N $t2O $t2P $t2Q $t2R $t2S $t2T $t2U $t2V $t2W $t2X $t2Y $t2Z $t30 $t31 $t32 $t33 $t34 $t35 $t36 $t37 $t38 $t39 $t3a $t3b $t3c $t3d $t3e $t3f $t3g $t3h $t3i $t3j $t3k $t3l $t3m $t3n $t3o $t3p $t3q $t3r $t3s $t3t $t3u $t3v $t3w $t3x $t3y $t3z $t3A $t3B $t3C $t3D $t3E $t3F $t3G $t3H $t3I $t3J $t3K $t3L $t3M $t3N $t3O $t3P $t3Q $t3R $t3S $t3T $t3U $t3V $t3W $t3X $t3Y $t3Z $t40 $t41 $t42 $t43 $t44 $t45 $t46 $t47 $t48 $t49 $t4a $t4b $t4c $t4d $t4e $t4f $t4g $t4h $t4i $t4j $t4k $t4l $t4m $t4n $t4o $t4p $t4q $t4r $t4s $t4t $t4u $t4v $t4w $t4x $t4y $t4z $t4A $t4B $t4C $t4D $t4E $t4F $t4G $t4H $t4I $t4J $t4K $t4L $t4M $t4N $t4O $t4P $t4Q $t4R $t4S $t4T $t4U $t4V $t4W $t4X $t4Y $t4Z $t50 $t51 $t52 $t53 $t54 $t55 $t56 $t57 $t58 $t59 $t5a $t5b $t5c $t5d $t5e $t5f $t5g $t5h $t5i $t5j $t5k $t5l $t5m $t5n $t5o $t5p $t5q $t5r $t5s $t5t $t5u $t5v $t5w $t5x $t5y $t5z $t5A $t5B $t5C $t5D $t5E $t5F $t5G $t5H $t5I $t5J $t5K $t5L $t5M $t5N $t5O $t5P $t5Q $t5R $t5S $t5T $t5U $t5V $t5W $t5X $t5Y $t5Z $t60 $t61 $t62 $t63 $t64 $t65 $t66 $t67 $t68 $t69 $t6a $t6b $t6c $t6d $t6e $t6f $t6g $t6h $t6i $t6j $t6k $t6l $t6m $t6n $t6o $t6p $t6q $t6r $t6s $t6t $t6u $t6v $t6w $t6x $t6y $t6z $t6A $t6B $t6C $t6D $t6E $t6F $t6G $t6H $t6I $t6J $t6K $t6L $t6M $t6N $t6O $t6P $t6Q $t6R $t6S $t6T $t6U $t6V $t6W $t6X $t6Y $t6Z $t70 $t71 $t72 $t73 $t74 $t75 $t76 $t77 $t78 $t79 $t7a $t7b $t7c $t7d $t7e $t7f $t7g $t7h $t7i $t7j $t7k $t7l $t7m $t7n $t7o $t7p $t7q $t7r $t7s $t7t $t7u $t7v $t7w $t7x $t7y $t7z $t7A $t7B $t7C $t7D $t7E $t7F $t7G $t7H $t7I $t7J $t7K $t7L $t7M $t7N $t7O $t7P $t7Q $t7R $t7S $t7T $t7U $t7V $t7W $t7X $t7Y $t7Z $t80 $t81 $t82 $t83 $t84 $t85 $t86 $t87 $t88 $t89 $t8a $t8b $t8c $t8d $t8e $t8f $t8g $t8h $t8i $t8j] => $t8j -> $b -> ($t8j, $t4b, $t4a) -> ($a, ($t49, ($c, ($d, ($e, ($f, ($g, ($h, ($i, $j, $j), ($i, $k, $k)), ($h, ($l, $m, $m), ($l, $n, $n))), ($g, ($o, ($p, $q, $q), ($p, $r, $r)), ($o, ($s, $t, $t), ($s, $u, $u)))), ($f, ($v, ($w, ($x, $y, $y), ($x, $z, $z)), ($w, ($tq, $tr, $tr), ($tq, $ts, $ts))), ($v, ($tt, ($tu, $tv, $tv), ($tu, $tw, $tw)), ($tt, ($tx, $ty, $ty), ($tx, $tz, $tz))))), ($e, ($tA, ($tB, ($tC, ($tD, $tE, $tE), ($tD, $tF, $tF)), ($tC, ($tG, $tH, $tH), ($tG, $tI, $tI))), ($tB, ($tJ, ($tK, $tL, $tL), ($tK, $tM, $tM)), ($tJ, ($tN, $tO, $tO), ($tN, $tP, $tP)))), ($tA, ($tQ, ($tR, ($tS, $tT, $tT), ($tS, $tU, $tU)), ($tR, ($tV, $tW, $tW), ($tV, $tX, $tX))), ($tQ, ($tY, ($tZ, $t10, $t10), ($tZ, $t11, $t11)), ($tY, ($t12, $t13, $t13), ($t12, $t14, $t14)))))), ($d, ($t15, ($t16, ($t17, ($t18, ($t19, $t1a, $t1a), ($t19, $t1b, $t1b)), ($t18, ($t1c, $t1d, $t1d), ($t1c, $t1e, $t1e))), ($t17, ($t1f, ($t1g, $t1h, $t1h), ($t1g, $t1i, $t1i)), ($t1f, ($t1j, $t1k, $t1k), ($t1j, $t1l, $t1l)))), ($t16, ($t1m, ($t1n, ($t1o, $t1p, $t1p), ($t1o, $t1q, $t1q)), ($t1n, ($t1r, $t1s, $t1s), ($t1r, $t1t, $t1t))), ($t1m, ($t1u, ($t1v, $t1w, $t1w), ($t1v, $t1x, $t1x)), ($t1u, ($t1y, $t1z, $t1z), ($t1y, $t1A, $t1A))))), ($t15, ($t1B, ($t1C, ($t1D, ($t1E, $t1F, $t1F), ($t1E, $t1G, $t1G)), ($t1D, ($t1H, $t1I, $t1I), ($t1H, $t1J, $t1J))), ($t1C, ($t1K, ($t1L, $t1M, $t1M), ($t1L, $t1N, $t1N)), ($t1K, ($t1O, $t1P, $t1P), ($t1O, $t1Q, $t1Q)))), ($t1B, ($t1R, ($t1S, ($t1T, $t1U, $t1U), ($t1T, $t1V, $t1V)), ($t1S, ($t1W, $t1X, $t1X), ($t1W, $t1Y, $t1Y))), ($t1R, ($t1Z, ($t20, $t21, $t21), ($t20, $t22, $t22)), ($t1Z, ($t23, $t24, $t24), ($t23, $t25, $t25))))))), ($c, ($t26, ($t27, ($t28, ($t29, ($t2a, ($t2b, $t2c, $t2c), ($t2b, $t2d, $t2d)), ($t2a, ($t2e, $t2f, $t2f), ($t2e, $t2g, $t2g))), ($t29, ($t2h, ($t2i, $t2j, $t2j), ($t2i, $t2k, $t2k)), ($t2h, ($t2l, $t2m, $t2m), ($t2l, $t2n, $t2n)))), ($t28, ($t2o, ($t2p, ($t2q, $t2r, $t2r), ($t2q, $t2s, $t2s)), ($t2p, ($t2t, $t2u, $t2u), ($t2t, $t2v, $t2v))), ($t2o, ($t2w, ($t2x, $t2y, $t2y), ($t2x, $t2z, $t2z)), ($t2w, ($t2A, $t2B, $t2B), ($t2A, $t2C, $t2C))))), ($t27, ($t2D, ($t2E, ($t2F, ($t2G, $t2H, $t2H), ($t2G, $t2I, $t2I)), ($t2F, ($t2J, $t2K, $t2K), ($t2J, $t2L, $t2L))), ($t2E, ($t2M, ($t2N, $t2O, $t2O), ($t2N, $t2P, $t2P)), ($t2M, ($t2Q, $t2R, $t2R), ($t2Q, $t2S, $t2S)))), ($t2D, ($t2T, ($t2U, ($t2V, $t2W, $t2W), ($t2V, $t2X, $t2X)), ($t2U, ($t2Y, $t2Z, $t2Z), ($t2Y, $t30, $t30))), ($t2T, ($t31, ($t32, $t33, $t33), ($t32, $t34, $t34)), ($t31, ($t35, $t36, $t36), ($t35, $t37, $t37)))))), ($t26, ($t38, ($t39, ($t3a, ($t3b, ($t3c, $t3d, $t3d), ($t3c, $t3e, $t3e)), ($t3b, ($t3f, $t3g, $t3g), ($t3f, $t3h, $t3h))), ($t3a, ($t3i, ($t3j, $t3k, $t3k), ($t3j, $t3l, $t3l)), ($t3i, ($t3m, $t3n, $t3n), ($t3m, $t3o, $t3o)))), ($t39, ($t3p, ($t3q, ($t3r, $t3s, $t3s), ($t3r, $t3t, $t3t)), ($t3q, ($t3u, $t3v, $t3v), ($t3u, $t3w, $t3w))), ($t3p, ($t3x, ($t3y, $t3z, $t3z), ($t3y, $t3A, $t3A)), ($t3x, ($t3B, $t3C, $t3C), ($t3B, $t3D, $t3D))))), ($t38, ($t3E, ($t3F, ($t3G, ($t3H, $t3I, $t3I), ($t3H, $t3J, $t3J)), ($t3G, ($t3K, $t3L, $t3L), ($t3K, $t3M, $t3M))), ($t3F, ($t3N, ($t3O, $t3P, $t3P), ($t3O, $t3Q, $t3Q)), ($t3N, ($t3R, $t3S, $t3S), ($t3R, $t3T, $t3T)))), ($t3E, ($t3U, ($t3V, ($t3W, $t3X, $t3X), ($t3W, $t3Y, $t3Y)), ($t3V, ($t3Z, $t40, $t40), ($t3Z, $t41, $t41))), ($t3U, ($t42, ($t43, $t44, $t44), ($t43, $t45, $t45)), ($t42, ($t46, $t47, $t47), ($t46, $t48, $t48)))))))), ($t49, ($t4c, ($t4d, ($t4e, ($t4f, ($t4g, ($t4h, ($t4i, $t4j, $t4j), ($t4i, $t4k, $t4k)), ($t4h, ($t4l, $t4m, $t4m), ($t4l, $t4n, $t4n))), ($t4g, ($t4o, ($t4p, $t4q, $t4q), ($t4p, $t4r, $t4r)), ($t4o, ($t4s, $t4t, $t4t), ($t4s, $t4u, $t4u)))), ($t4f, ($t4v, ($t4w, ($t4x, $t4y, $t4y), ($t4x, $t4z, $t4z)), ($t4w, ($t4A, $t4B, $t4B), ($t4A, $t4C, $t4C))), ($t4v, ($t4D, ($t4E, $t4F, $t4F), ($t4E, $t4G, $t4G)), ($t4D, ($t4H, $t4I, $t4I), ($t4H, $t4J, $t4J))))), ($t4e, ($t4K, ($t4L, ($t4M, ($t4N, $t4O, $t4O), ($t4N, $t4P, $t4P)), ($t4M, ($t4Q, $t4R, $t4R), ($t4Q, $t4S, $t4S))), ($t4L, ($t4T, ($t4U, $t4V, $t4V), ($t4U, $t4W, $t4W)), ($t4T, ($t4X, $t4Y, $t4Y), ($t4X, $t4Z, $t4Z)))), ($t4K, ($t50, ($t51, ($t52, $t53, $t53), ($t52, $t54, $t54)), ($t51, ($t55, $t56, $t56), ($t55, $t57, $t57))), ($t50, ($t58, ($t59, $t5a, $t5a), ($t59, $t5b, $t5b)), ($t58, ($t5c, $t5d, $t5d), ($t5c, $t5e, $t5e)))))), ($t4d, ($t5f, ($t5g, ($t5h, ($t5i, ($t5j, $t5k, $t5k), ($t5j, $t5l, $t5l)), ($t5i, ($t5m, $t5n, $t5n), ($t5m, $t5o, $t5o))), ($t5h, ($t5p, ($t5q, $t5r, $t5r), ($t5q, $t5s, $t5s)), ($t5p, ($t5t, $t5u, $t5u), ($t5t, $t5v, $t5v)))), ($t5g, ($t5w, ($t5x, ($t5y, $t5z, $t5z), ($t5y, $t5A, $t5A)), ($t5x, ($t5B, $t5C, $t5C), ($t5B, $t5D, $t5D))), ($t5w, ($t5E, ($t5F, $t5G, $t5G), ($t5F, $t5H, $t5H)), ($t5E, ($t5I, $t5J, $t5J), ($t5I, $t5K, $t5K))))), ($t5f, ($t5L, ($t5M, ($t5N, ($t5O, $t5P, $t5P), ($t5O, $t5Q, $t5Q)), ($t5N, ($t5R, $t5S, $t5S), ($t5R, $t5T, $t5T))), ($t5M, ($t5U, ($t5V, $t5W, $t5W), ($t5V, $t5X, $t5X)), ($t5U, ($t5Y, $t5Z, $t5Z), ($t5Y, $t60, $t60)))), ($t5L, ($t61, ($t62, ($t63, $t64, $t64), ($t63, $t65, $t65)), ($t62, ($t66, $t67, $t67), ($t66, $t68, $t68))), ($t61, ($t69, ($t6a, $t6b, $t6b), ($t6a, $t6c, $t6c)), ($t69, ($t6d, $t6e, $t6e), ($t6d, $t6f, $t6f))))))), ($t4c, ($t6g, ($t6h, ($t6i, ($t6j, ($t6k, ($t6l, $t6m, $t6m), ($t6l, $t6n, $t6n)), ($t6k, ($t6o, $t6p, $t6p), ($t6o, $t6q, $t6q))), ($t6j, ($t6r, ($t6s, $t6t, $t6t), ($t6s, $t6u, $t6u)), ($t6r, ($t6v, $t6w, $t6w), ($t6v, $t6x, $t6x)))), ($t6i, ($t6y, ($t6z, ($t6A, $t6B, $t6B), ($t6A, $t6C, $t6C)), ($t6z, ($t6D, $t6E, $t6E), ($t6D, $t6F, $t6F))), ($t6y, ($t6G, ($t6H, $t6I, $t6I), ($t6H, $t6J, $t6J)), ($t6G, ($t6K, $t6L, $t6L), ($t6K, $t6M, $t6M))))), ($t6h, ($t6N, ($t6O, ($t6P, ($t6Q, $t6R, $t6R), ($t6Q, $t6S, $t6S)), ($t6P, ($t6T, $t6U, $t6U), ($t6T, $t6V, $t6V))), ($t6O, ($t6W, ($t6X, $t6Y, $t6Y), ($t6X, $t6Z, $t6Z)), ($t6W, ($t70, $t71, $t71), ($t70, $t72, $t72)))), ($t6N, ($t73, ($t74, ($t75, $t76, $t76), ($t75, $t77, $t77)), ($t74, ($t78, $t79, $t79), ($t78, $t7a, $t7a))), ($t73, ($t7b, ($t7c, $t7d, $t7d), ($t7c, $t7e, $t7e)), ($t7b, ($t7f, $t7g, $t7g), ($t7f, $t7h, $t7h)))))), ($t6g, ($t7i, ($t7j, ($t7k, ($t7l, ($t7m, $t7n, $t7n), ($t7m, $t7o, $t7o)), ($t7l, ($t7p, $t7q, $t7q), ($t7p, $t7r, $t7r))), ($t7k, ($t7s, ($t7t, $t7u, $t7u), ($t7t, $t7v, $t7v)), ($t7s, ($t7w, $t7x, $t7x), ($t7w, $t7y, $t7y)))), ($t7j, ($t7z, ($t7A, ($t7B, $t7C, $t7C), ($t7B, $t7D, $t7D)), ($t7A, ($t7E, $t7F, $t7F), ($t7E, $t7G, $t7G))), ($t7z, ($t7H, ($t7I, $t7J, $t7J), ($t7I, $t7K, $t7K)), ($t7H, ($t7L, $t7M, $t7M), ($t7L, $t7N, $t7N))))), ($t7i, ($t7O, ($t7P, ($t7Q, ($t7R, $t7S, $t7S), ($t7R, $t7T, $t7T)), ($t7Q, ($t7U, $t7V, $t7V), ($t7U, $t7W, $t7W))), ($t7P, ($t7X, ($t7Y, $t7Z, $t7Z), ($t7Y, $t80, $t80)), ($t7X, ($t81, $t82, $t82), ($t81, $t83, $t83)))), ($t7O, ($t84, ($t85, ($t86, $t87, $t87), ($t86, $t88, $t88)), ($t85, ($t89, $t8a, $t8a), ($t89, $t8b, $t8b))), ($t84, ($t8c, ($t8d, $t8e, $t8e), ($t8d, $t8f, $t8f)), ($t8c, ($t8g, $t8h, $t8h), ($t8g, $t8i, $t8i))))))))) -> $a ;;
-1 g_rec _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k] => ($b -> $c -> $d -> $k -> $a) -> ($g -> $e -> $h -> $i -> $a) -> $f -> $b -> ($f, $e, $g) -> ($j, $k, $i) -> $j ;;
-1 g_rec0 _:_ _forall_ [$a] => $a -> $a -> $a -> $a -> $a ;;
-1 g_rec1 _:_ _forall_ [$a $b $c] => $c -> $b -> ($c, $b, $b) -> ($a, $b, $b) -> $a ;;
-1 g_rec2 _:_ _forall_ [$a $b $c $d $e $f $g] => $g -> $b -> ($g, $f, $e) -> ($a, ($d, $c, $c), ($d, $f, $f)) -> $a ;;
-1 g_rec3 _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k $l] => $l -> $b -> ($l, $h, $g) -> ($a, ($f, ($d, $e, $e), ($d, $c, $c)), ($f, ($j, $k, $k), ($j, $i, $i))) -> $a ;;
-1 g_rec4 _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p $q $r $s $t] => $t -> $b -> ($t, $l, $k) -> ($a, ($j, ($c, ($d, $e, $e), ($d, $f, $f)), ($c, ($g, $h, $h), ($g, $i, $i))), ($j, ($m, ($n, $o, $o), ($n, $p, $p)), ($m, ($q, $r, $r), ($q, $s, $s)))) -> $a ;;
-1 g_rec5 _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p $q $r $s $t $u $v $w $x $y $z $tq $tr $ts $tt $tu $tv $tw $tx $ty $tz] => $tz -> $b -> ($tz, $t, $s) -> ($a, ($r, ($c, ($d, ($e, $f, $f), ($e, $g, $g)), ($d, ($h, $i, $i), ($h, $j, $j))), ($c, ($k, ($l, $m, $m), ($l, $n, $n)), ($k, ($o, $p, $p), ($o, $q, $q)))), ($r, ($u, ($v, ($w, $x, $x), ($w, $y, $y)), ($v, ($z, $tq, $tq), ($z, $tr, $tr))), ($u, ($ts, ($tt, $tu, $tu), ($tt, $tv, $tv)), ($ts, ($tw, $tx, $tx), ($tw, $ty, $ty))))) -> $a ;;
-1 g_rec6 _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p $q $r $s $t $u $v $w $x $y $z $tq $tr $ts $tt $tu $tv $tw $tx $ty $tz $tA $tB $tC $tD $tE $tF $tG $tH $tI $tJ $tK $tL $tM $tN $tO $tP $tQ $tR $tS $tT $tU $tV $tW $tX $tY $tZ $t10 $t11 $t12 $t13 $t14 $t15] => $t15 -> $b -> ($t15, $tz, $ty) -> ($a, ($tx, ($c, ($d, ($e, ($f, $g, $g), ($f, $h, $h)), ($e, ($i, $j, $j), ($i, $k, $k))), ($d, ($l, ($m, $n, $n), ($m, $o, $o)), ($l, ($p, $q, $q), ($p, $r, $r)))), ($c, ($s, ($t, ($u, $v, $v), ($u, $w, $w)), ($t, ($x, $y, $y), ($x, $z, $z))), ($s, ($tq, ($tr, $ts, $ts), ($tr, $tt, $tt)), ($tq, ($tu, $tv, $tv), ($tu, $tw, $tw))))), ($tx, ($tA, ($tB, ($tC, ($tD, $tE, $tE), ($tD, $tF, $tF)), ($tC, ($tG, $tH, $tH), ($tG, $tI, $tI))), ($tB, ($tJ, ($tK, $tL, $tL), ($tK, $tM, $tM)), ($tJ, ($tN, $tO, $tO), ($tN, $tP, $tP)))), ($tA, ($tQ, ($tR, ($tS, $tT, $tT), ($tS, $tU, $tU)), ($tR, ($tV, $tW, $tW), ($tV, $tX, $tX))), ($tQ, ($tY, ($tZ, $t10, $t10), ($tZ, $t11, $t11)), ($tY, ($t12, $t13, $t13), ($t12, $t14, $t14)))))) -> $a ;;
-1 g_rec7 _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p $q $r $s $t $u $v $w $x $y $z $tq $tr $ts $tt $tu $tv $tw $tx $ty $tz $tA $tB $tC $tD $tE $tF $tG $tH $tI $tJ $tK $tL $tM $tN $tO $tP $tQ $tR $tS $tT $tU $tV $tW $tX $tY $tZ $t10 $t11 $t12 $t13 $t14 $t15 $t16 $t17 $t18 $t19 $t1a $t1b $t1c $t1d $t1e $t1f $t1g $t1h $t1i $t1j $t1k $t1l $t1m $t1n $t1o $t1p $t1q $t1r $t1s $t1t $t1u $t1v $t1w $t1x $t1y $t1z $t1A $t1B $t1C $t1D $t1E $t1F $t1G $t1H $t1I $t1J $t1K $t1L $t1M $t1N $t1O $t1P $t1Q $t1R $t1S $t1T $t1U $t1V $t1W $t1X $t1Y $t1Z $t20 $t21 $t22 $t23 $t24 $t25 $t26 $t27] => $t27 -> $b -> ($t27, $t15, $t14) -> ($a, ($t13, ($c, ($d, ($e, ($f, ($g, $h, $h), ($g, $i, $i)), ($f, ($j, $k, $k), ($j, $l, $l))), ($e, ($m, ($n, $o, $o), ($n, $p, $p)), ($m, ($q, $r, $r), ($q, $s, $s)))), ($d, ($t, ($u, ($v, $w, $w), ($v, $x, $x)), ($u, ($y, $z, $z), ($y, $tq, $tq))), ($t, ($tr, ($ts, $tt, $tt), ($ts, $tu, $tu)), ($tr, ($tv, $tw, $tw), ($tv, $tx, $tx))))), ($c, ($ty, ($tz, ($tA, ($tB, $tC, $tC), ($tB, $tD, $tD)), ($tA, ($tE, $tF, $tF), ($tE, $tG, $tG))), ($tz, ($tH, ($tI, $tJ, $tJ), ($tI, $tK, $tK)), ($tH, ($tL, $tM, $tM), ($tL, $tN, $tN)))), ($ty, ($tO, ($tP, ($tQ, $tR, $tR), ($tQ, $tS, $tS)), ($tP, ($tT, $tU, $tU), ($tT, $tV, $tV))), ($tO, ($tW, ($tX, $tY, $tY), ($tX, $tZ, $tZ)), ($tW, ($t10, $t11, $t11), ($t10, $t12, $t12)))))), ($t13, ($t16, ($t17, ($t18, ($t19, ($t1a, $t1b, $t1b), ($t1a, $t1c, $t1c)), ($t19, ($t1d, $t1e, $t1e), ($t1d, $t1f, $t1f))), ($t18, ($t1g, ($t1h, $t1i, $t1i), ($t1h, $t1j, $t1j)), ($t1g, ($t1k, $t1l, $t1l), ($t1k, $t1m, $t1m)))), ($t17, ($t1n, ($t1o, ($t1p, $t1q, $t1q), ($t1p, $t1r, $t1r)), ($t1o, ($t1s, $t1t, $t1t), ($t1s, $t1u, $t1u))), ($t1n, ($t1v, ($t1w, $t1x, $t1x), ($t1w, $t1y, $t1y)), ($t1v, ($t1z, $t1A, $t1A), ($t1z, $t1B, $t1B))))), ($t16, ($t1C, ($t1D, ($t1E, ($t1F, $t1G, $t1G), ($t1F, $t1H, $t1H)), ($t1E, ($t1I, $t1J, $t1J), ($t1I, $t1K, $t1K))), ($t1D, ($t1L, ($t1M, $t1N, $t1N), ($t1M, $t1O, $t1O)), ($t1L, ($t1P, $t1Q, $t1Q), ($t1P, $t1R, $t1R)))), ($t1C, ($t1S, ($t1T, ($t1U, $t1V, $t1V), ($t1U, $t1W, $t1W)), ($t1T, ($t1X, $t1Y, $t1Y), ($t1X, $t1Z, $t1Z))), ($t1S, ($t20, ($t21, $t22, $t22), ($t21, $t23, $t23)), ($t20, ($t24, $t25, $t25), ($t24, $t26, $t26))))))) -> $a ;;
-1 g_rec8 _:_ _forall_ [$a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p $q $r $s $t $u $v $w $x $y $z $tq $tr $ts $tt $tu $tv $tw $tx $ty $tz $tA $tB $tC $tD $tE $tF $tG $tH $tI $tJ $tK $tL $tM $tN $tO $tP $tQ $tR $tS $tT $tU $tV $tW $tX $tY $tZ $t10 $t11 $t12 $t13 $t14 $t15 $t16 $t17 $t18 $t19 $t1a $t1b $t1c $t1d $t1e $t1f $t1g $t1h $t1i $t1j $t1k $t1l $t1m $t1n $t1o $t1p $t1q $t1r $t1s $t1t $t1u $t1v $t1w $t1x $t1y $t1z $t1A $t1B $t1C $t1D $t1E $t1F $t1G $t1H $t1I $t1J $t1K $t1L $t1M $t1N $t1O $t1P $t1Q $t1R $t1S $t1T $t1U $t1V $t1W $t1X $t1Y $t1Z $t20 $t21 $t22 $t23 $t24 $t25 $t26 $t27 $t28 $t29 $t2a $t2b $t2c $t2d $t2e $t2f $t2g $t2h $t2i $t2j $t2k $t2l $t2m $t2n $t2o $t2p $t2q $t2r $t2s $t2t $t2u $t2v $t2w $t2x $t2y $t2z $t2A $t2B $t2C $t2D $t2E $t2F $t2G $t2H $t2I $t2J $t2K $t2L $t2M $t2N $t2O $t2P $t2Q $t2R $t2S $t2T $t2U $t2V $t2W $t2X $t2Y $t2Z $t30 $t31 $t32 $t33 $t34 $t35 $t36 $t37 $t38 $t39 $t3a $t3b $t3c $t3d $t3e $t3f $t3g $t3h $t3i $t3j $t3k $t3l $t3m $t3n $t3o $t3p $t3q $t3r $t3s $t3t $t3u $t3v $t3w $t3x $t3y $t3z $t3A $t3B $t3C $t3D $t3E $t3F $t3G $t3H $t3I $t3J $t3K $t3L $t3M $t3N $t3O $t3P $t3Q $t3R $t3S $t3T $t3U $t3V $t3W $t3X $t3Y $t3Z $t40 $t41 $t42 $t43 $t44 $t45 $t46 $t47 $t48 $t49 $t4a $t4b] => $t4b -> $b -> ($t4b, $t27, $t26) -> ($a, ($t25, ($c, ($d, ($e, ($f, ($g, ($h, $i, $i), ($h, $j, $j)), ($g, ($k, $l, $l), ($k, $m, $m))), ($f, ($n, ($o, $p, $p), ($o, $q, $q)), ($n, ($r, $s, $s), ($r, $t, $t)))), ($e, ($u, ($v, ($w, $x, $x), ($w, $y, $y)), ($v, ($z, $tq, $tq), ($z, $tr, $tr))), ($u, ($ts, ($tt, $tu, $tu), ($tt, $tv, $tv)), ($ts, ($tw, $tx, $tx), ($tw, $ty, $ty))))), ($d, ($tz, ($tA, ($tB, ($tC, $tD, $tD), ($tC, $tE, $tE)), ($tB, ($tF, $tG, $tG), ($tF, $tH, $tH))), ($tA, ($tI, ($tJ, $tK, $tK), ($tJ, $tL, $tL)), ($tI, ($tM, $tN, $tN), ($tM, $tO, $tO)))), ($tz, ($tP, ($tQ, ($tR, $tS, $tS), ($tR, $tT, $tT)), ($tQ, ($tU, $tV, $tV), ($tU, $tW, $tW))), ($tP, ($tX, ($tY, $tZ, $tZ), ($tY, $t10, $t10)), ($tX, ($t11, $t12, $t12), ($t11, $t13, $t13)))))), ($c, ($t14, ($t15, ($t16, ($t17, ($t18, $t19, $t19), ($t18, $t1a, $t1a)), ($t17, ($t1b, $t1c, $t1c), ($t1b, $t1d, $t1d))), ($t16, ($t1e, ($t1f, $t1g, $t1g), ($t1f, $t1h, $t1h)), ($t1e, ($t1i, $t1j, $t1j), ($t1i, $t1k, $t1k)))), ($t15, ($t1l, ($t1m, ($t1n, $t1o, $t1o), ($t1n, $t1p, $t1p)), ($t1m, ($t1q, $t1r, $t1r), ($t1q, $t1s, $t1s))), ($t1l, ($t1t, ($t1u, $t1v, $t1v), ($t1u, $t1w, $t1w)), ($t1t, ($t1x, $t1y, $t1y), ($t1x, $t1z, $t1z))))), ($t14, ($t1A, ($t1B, ($t1C, ($t1D, $t1E, $t1E), ($t1D, $t1F, $t1F)), ($t1C, ($t1G, $t1H, $t1H), ($t1G, $t1I, $t1I))), ($t1B, ($t1J, ($t1K, $t1L, $t1L), ($t1K, $t1M, $t1M)), ($t1J, ($t1N, $t1O, $t1O), ($t1N, $t1P, $t1P)))), ($t1A, ($t1Q, ($t1R, ($t1S, $t1T, $t1T), ($t1S, $t1U, $t1U)), ($t1R, ($t1V, $t1W, $t1W), ($t1V, $t1X, $t1X))), ($t1Q, ($t1Y, ($t1Z, $t20, $t20), ($t1Z, $t21, $t21)), ($t1Y, ($t22, $t23, $t23), ($t22, $t24, $t24))))))), ($t25, ($t28, ($t29, ($t2a, ($t2b, ($t2c, ($t2d, $t2e, $t2e), ($t2d, $t2f, $t2f)), ($t2c, ($t2g, $t2h, $t2h), ($t2g, $t2i, $t2i))), ($t2b, ($t2j, ($t2k, $t2l, $t2l), ($t2k, $t2m, $t2m)), ($t2j, ($t2n, $t2o, $t2o), ($t2n, $t2p, $t2p)))), ($t2a, ($t2q, ($t2r, ($t2s, $t2t, $t2t), ($t2s, $t2u, $t2u)), ($t2r, ($t2v, $t2w, $t2w), ($t2v, $t2x, $t2x))), ($t2q, ($t2y, ($t2z, $t2A, $t2A), ($t2z, $t2B, $t2B)), ($t2y, ($t2C, $t2D, $t2D), ($t2C, $t2E, $t2E))))), ($t29, ($t2F, ($t2G, ($t2H, ($t2I, $t2J, $t2J), ($t2I, $t2K, $t2K)), ($t2H, ($t2L, $t2M, $t2M), ($t2L, $t2N, $t2N))), ($t2G, ($t2O, ($t2P, $t2Q, $t2Q), ($t2P, $t2R, $t2R)), ($t2O, ($t2S, $t2T, $t2T), ($t2S, $t2U, $t2U)))), ($t2F, ($t2V, ($t2W, ($t2X, $t2Y, $t2Y), ($t2X, $t2Z, $t2Z)), ($t2W, ($t30, $t31, $t31), ($t30, $t32, $t32))), ($t2V, ($t33, ($t34, $t35, $t35), ($t34, $t36, $t36)), ($t33, ($t37, $t38, $t38), ($t37, $t39, $t39)))))), ($t28, ($t3a, ($t3b, ($t3c, ($t3d, ($t3e, $t3f, $t3f), ($t3e, $t3g, $t3g)), ($t3d, ($t3h, $t3i, $t3i), ($t3h, $t3j, $t3j))), ($t3c, ($t3k, ($t3l, $t3m, $t3m), ($t3l, $t3n, $t3n)), ($t3k, ($t3o, $t3p, $t3p), ($t3o, $t3q, $t3q)))), ($t3b, ($t3r, ($t3s, ($t3t, $t3u, $t3u), ($t3t, $t3v, $t3v)), ($t3s, ($t3w, $t3x, $t3x), ($t3w, $t3y, $t3y))), ($t3r, ($t3z, ($t3A, $t3B, $t3B), ($t3A, $t3C, $t3C)), ($t3z, ($t3D, $t3E, $t3E), ($t3D, $t3F, $t3F))))), ($t3a, ($t3G, ($t3H, ($t3I, ($t3J, $t3K, $t3K), ($t3J, $t3L, $t3L)), ($t3I, ($t3M, $t3N, $t3N), ($t3M, $t3O, $t3O))), ($t3H, ($t3P, ($t3Q, $t3R, $t3R), ($t3Q, $t3S, $t3S)), ($t3P, ($t3T, $t3U, $t3U), ($t3T, $t3V, $t3V)))), ($t3G, ($t3W, ($t3X, ($t3Y, $t3Z, $t3Z), ($t3Y, $t40, $t40)), ($t3X, ($t41, $t42, $t42), ($t41, $t43, $t43))), ($t3W, ($t44, ($t45, $t46, $t46), ($t45, $t47, $t47)), ($t44, ($t48, $t49, $t49), ($t48, $t4a, $t4a)))))))) -> $a ;;
-1 head _:_ _forall_ [$a] => [$a] -> $a ;;
-1 one _:_ _forall_ [$a] => $a ;;
-1 s_1_0 _:_ _forall_ [$a] => $a -> $a ;;
-1 s_2_0 _:_ _forall_ [$a $b] => ($a, $b) -> $a ;;
-1 s_2_1 _:_ _forall_ [$a $b] => ($a, $b) -> $b ;;
-1 s_3_0 _:_ _forall_ [$a $b $c] => ($a, $b, $c) -> $a ;;
-1 s_3_1 _:_ _forall_ [$a $b $c] => ($a, $b, $c) -> $b ;;
-1 s_3_2 _:_ _forall_ [$a $b $c] => ($a, $b, $c) -> $c ;;
+__export ShouldSucceed absAnd absIf bottom f f_rec f_rec0 f_rec1 f_rec2 fac fac_rec fac_rec0 fac_rec1 fac_rec2 fac_rec3 fac_rec4 g g_rec g_rec0 g_rec1 g_rec2 g_rec3 g_rec4 g_rec5 g_rec6 g_rec7 g_rec8 head one s_1_0 s_2_0 s_2_1 s_3_0 s_3_1 s_3_2;
+1 absAnd :: __forall [t] => t -> t -> t ;
+1 absIf :: __forall [t _116 _1161] => _116 -> t -> _1161 -> _116 ;
+1 bottom :: __forall [t] => [t] -> t ;
+1 f :: __forall [t] => t -> t ;
+1 f_rec :: __forall [t _116] => (_116 -> t) -> _116 -> t ;
+1 f_rec0 :: __forall [t] => t -> t ;
+1 f_rec1 :: __forall [t] => t -> t ;
+1 f_rec2 :: __forall [t] => t -> t ;
+1 fac :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169] => (t, (_1167, (_116, (_1161, (_1162, _1163)))), (_1168, (_116, (_1161, (_1162, _1163))), (_1164, (_1161, (_1162, _1163)), (_1165, (_1162, _1163), (_1166, _1163, _1163))))) -> (_1169, (_1167, (_116, (_1161, (_1162, _1163))))) -> t ;
+1 fac_rec :: __forall [t _116 _1161 _1162 _1163] => (_1162 -> t -> _116) -> (_1161, t, _1162) -> (_1163, t) -> _1161 ;
+1 fac_rec0 :: __forall [t] => t -> t -> t ;
+1 fac_rec1 :: __forall [t _116 _1161] => (t, _116, _116) -> (_1161, _116) -> t ;
+1 fac_rec2 :: __forall [t _116 _1161 _1162 _1163] => (t, (_1161, _116), (_1162, _116, _116)) -> (_1163, (_1161, _116)) -> t ;
+1 fac_rec3 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165] => (t, (_1163, (_116, _1161)), (_1164, (_116, _1161), (_1162, _1161, _1161))) -> (_1165, (_1163, (_116, _1161))) -> t ;
+1 fac_rec4 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167] => (t, (_1165, (_116, (_1161, _1162))), (_1166, (_116, (_1161, _1162)), (_1163, (_1161, _1162), (_1164, _1162, _1162)))) -> (_1167, (_1165, (_116, (_1161, _1162)))) -> t ;
+1 g :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169 _11610 _11611 _11612 _11613 _11614 _11615 _11616 _11617 _11618 _11619 _11620 _11621 _11622 _11623 _11624 _11625 _11626 _11627 _11628 _11629 _11630 _11631 _11632 _11633 _11634 _11635 _11636 _11637 _11638 _11639 _11640 _11641 _11642 _11643 _11644 _11645 _11646 _11647 _11648 _11649 _11650 _11651 _11652 _11653 _11654 _11655 _11656 _11657 _11658 _11659 _11660 _11661 _11662 _11663 _11664 _11665 _11666 _11667 _11668 _11669 _11670 _11671 _11672 _11673 _11674 _11675 _11676 _11677 _11678 _11679 _11680 _11681 _11682 _11683 _11684 _11685 _11686 _11687 _11688 _11689 _11690 _11691 _11692 _11693 _11694 _11695 _11696 _11697 _11698 _11699 _116100 _116101 _116102 _116103 _116104 _116105 _116106 _116107 _116108 _116109 _116110 _116111 _116112 _116113 _116114 _116115 _116116 _116117 _116118 _116119 _116120 _116121 _116122 _116123 _116124 _116125 _116126 _116127 _116128 _116129 _116130 _116131 _116132 _116133 _116134 _116135 _116136 _116137 _116138 _116139 _116140 _116141 _116142 _116143 _116144 _116145 _116146 _116147 _116148 _116149 _116150 _116151 _116152 _116153 _116154 _116155 _116156 _116157 _116158 _116159 _116160 _116161 _116162 _116163 _116164 _116165 _116166 _116167 _116168 _116169 _116170 _116171 _116172 _116173 _116174 _116175 _116176 _116177 _116178 _116179 _116180 _116181 _116182 _116183 _116184 _116185 _116186 _116187 _116188 _116189 _116190 _116191 _116192 _116193 _116194 _116195 _116196 _116197 _116198 _116199 _116200 _116201 _116202 _116203 _116204 _116205 _116206 _116207 _116208 _116209 _116210 _116211 _116212 _116213 _116214 _116215 _116216 _116217 _116218 _116219 _116220 _116221 _116222 _116223 _116224 _116225 _116226 _116227 _116228 _116229 _116230 _116231 _116232 _116233 _116234 _116235 _116236 _116237 _116238 _116239 _116240 _116241 _116242 _116243 _116244 _116245 _116246 _116247 _116248 _116249 _116250 _116251 _116252 _116253 _116254 _116255 _116256 _116257 _116258 _116259 _116260 _116261 _116262 _116263 _116264 _116265 _116266 _116267 _116268 _116269 _116270 _116271 _116272 _116273 _116274 _116275 _116276 _116277 _116278 _116279 _116280 _116281 _116282 _116283 _116284 _116285 _116286 _116287 _116288 _116289 _116290 _116291 _116292 _116293 _116294 _116295 _116296 _116297 _116298 _116299 _116300 _116301 _116302 _116303 _116304 _116305 _116306 _116307 _116308 _116309 _116310 _116311 _116312 _116313 _116314 _116315 _116316 _116317 _116318 _116319 _116320 _116321 _116322 _116323 _116324 _116325 _116326 _116327 _116328 _116329 _116330 _116331 _116332 _116333 _116334 _116335 _116336 _116337 _116338 _116339 _116340 _116341 _116342 _116343 _116344 _116345 _116346 _116347 _116348 _116349 _116350 _116351 _116352 _116353 _116354 _116355 _116356 _116357 _116358 _116359 _116360 _116361 _116362 _116363 _116364 _116365 _116366 _116367 _116368 _116369 _116370 _116371 _116372 _116373 _116374 _116375 _116376 _116377 _116378 _116379 _116380 _116381 _116382 _116383 _116384 _116385 _116386 _116387 _116388 _116389 _116390 _116391 _116392 _116393 _116394 _116395 _116396 _116397 _116398 _116399 _116400 _116401 _116402 _116403 _116404 _116405 _116406 _116407 _116408 _116409 _116410 _116411 _116412 _116413 _116414 _116415 _116416 _116417 _116418 _116419 _116420 _116421 _116422 _116423 _116424 _116425 _116426 _116427 _116428 _116429 _116430 _116431 _116432 _116433 _116434 _116435 _116436 _116437 _116438 _116439 _116440 _116441 _116442 _116443 _116444 _116445 _116446 _116447 _116448 _116449 _116450 _116451 _116452 _116453 _116454 _116455 _116456 _116457 _116458 _116459 _116460 _116461 _116462 _116463 _116464 _116465 _116466 _116467 _116468 _116469 _116470 _116471 _116472 _116473 _116474 _116475 _116476 _116477 _116478 _116479 _116480 _116481 _116482 _116483 _116484 _116485 _116486 _116487 _116488 _116489 _116490 _116491 _116492 _116493 _116494 _116495 _116496 _116497 _116498 _116499 _116500 _116501 _116502 _116503 _116504 _116505 _116506 _116507 _116508 _116509 _116510 _116511 _116512 _116513 _116514] => _116514 -> _116 -> (_116514, _116258, _116257) -> (t, (_116256, (_1161, (_1162, (_1163, (_1164, (_1165, (_1166, (_1167, _1168, _1168), (_1167, _1169, _1169)), (_1166, (_11610, _11611, _11611), (_11610, _11612, _11612))), (_1165, (_11613, (_11614, _11615, _11615), (_11614, _11616, _11616)), (_11613, (_11617, _11618, _11618), (_11617, _11619, _11619)))), (_1164, (_11620, (_11621, (_11622, _11623, _11623), (_11622, _11624, _11624)), (_11621, (_11625, _11626, _11626), (_11625, _11627, _11627))), (_11620, (_11628, (_11629, _11630, _11630), (_11629, _11631, _11631)), (_11628, (_11632, _11633, _11633), (_11632, _11634, _11634))))), (_1163, (_11635, (_11636, (_11637, (_11638, _11639, _11639), (_11638, _11640, _11640)), (_11637, (_11641, _11642, _11642), (_11641, _11643, _11643))), (_11636, (_11644, (_11645, _11646, _11646), (_11645, _11647, _11647)), (_11644, (_11648, _11649, _11649), (_11648, _11650, _11650)))), (_11635, (_11651, (_11652, (_11653, _11654, _11654), (_11653, _11655, _11655)), (_11652, (_11656, _11657, _11657), (_11656, _11658, _11658))), (_11651, (_11659, (_11660, _11661, _11661), (_11660, _11662, _11662)), (_11659, (_11663, _11664, _11664), (_11663, _11665, _11665)))))), (_1162, (_11666, (_11667, (_11668, (_11669, (_11670, _11671, _11671), (_11670, _11672, _11672)), (_11669, (_11673, _11674, _11674), (_11673, _11675, _11675))), (_11668, (_11676, (_11677, _11678, _11678), (_11677, _11679, _11679)), (_11676, (_11680, _11681, _11681), (_11680, _11682, _11682)))), (_11667, (_11683, (_11684, (_11685, _11686, _11686), (_11685, _11687, _11687)), (_11684, (_11688, _11689, _11689), (_11688, _11690, _11690))), (_11683, (_11691, (_11692, _11693, _11693), (_11692, _11694, _11694)), (_11691, (_11695, _11696, _11696), (_11695, _11697, _11697))))), (_11666, (_11698, (_11699, (_116100, (_116101, _116102, _116102), (_116101, _116103, _116103)), (_116100, (_116104, _116105, _116105), (_116104, _116106, _116106))), (_11699, (_116107, (_116108, _116109, _116109), (_116108, _116110, _116110)), (_116107, (_116111, _116112, _116112), (_116111, _116113, _116113)))), (_11698, (_116114, (_116115, (_116116, _116117, _116117), (_116116, _116118, _116118)), (_116115, (_116119, _116120, _116120), (_116119, _116121, _116121))), (_116114, (_116122, (_116123, _116124, _116124), (_116123, _116125, _116125)), (_116122, (_116126, _116127, _116127), (_116126, _116128, _116128))))))), (_1161, (_116129, (_116130, (_116131, (_116132, (_116133, (_116134, _116135, _116135), (_116134, _116136, _116136)), (_116133, (_116137, _116138, _116138), (_116137, _116139, _116139))), (_116132, (_116140, (_116141, _116142, _116142), (_116141, _116143, _116143)), (_116140, (_116144, _116145, _116145), (_116144, _116146, _116146)))), (_116131, (_116147, (_116148, (_116149, _116150, _116150), (_116149, _116151, _116151)), (_116148, (_116152, _116153, _116153), (_116152, _116154, _116154))), (_116147, (_116155, (_116156, _116157, _116157), (_116156, _116158, _116158)), (_116155, (_116159, _116160, _116160), (_116159, _116161, _116161))))), (_116130, (_116162, (_116163, (_116164, (_116165, _116166, _116166), (_116165, _116167, _116167)), (_116164, (_116168, _116169, _116169), (_116168, _116170, _116170))), (_116163, (_116171, (_116172, _116173, _116173), (_116172, _116174, _116174)), (_116171, (_116175, _116176, _116176), (_116175, _116177, _116177)))), (_116162, (_116178, (_116179, (_116180, _116181, _116181), (_116180, _116182, _116182)), (_116179, (_116183, _116184, _116184), (_116183, _116185, _116185))), (_116178, (_116186, (_116187, _116188, _116188), (_116187, _116189, _116189)), (_116186, (_116190, _116191, _116191), (_116190, _116192, _116192)))))), (_116129, (_116193, (_116194, (_116195, (_116196, (_116197, _116198, _116198), (_116197, _116199, _116199)), (_116196, (_116200, _116201, _116201), (_116200, _116202, _116202))), (_116195, (_116203, (_116204, _116205, _116205), (_116204, _116206, _116206)), (_116203, (_116207, _116208, _116208), (_116207, _116209, _116209)))), (_116194, (_116210, (_116211, (_116212, _116213, _116213), (_116212, _116214, _116214)), (_116211, (_116215, _116216, _116216), (_116215, _116217, _116217))), (_116210, (_116218, (_116219, _116220, _116220), (_116219, _116221, _116221)), (_116218, (_116222, _116223, _116223), (_116222, _116224, _116224))))), (_116193, (_116225, (_116226, (_116227, (_116228, _116229, _116229), (_116228, _116230, _116230)), (_116227, (_116231, _116232, _116232), (_116231, _116233, _116233))), (_116226, (_116234, (_116235, _116236, _116236), (_116235, _116237, _116237)), (_116234, (_116238, _116239, _116239), (_116238, _116240, _116240)))), (_116225, (_116241, (_116242, (_116243, _116244, _116244), (_116243, _116245, _116245)), (_116242, (_116246, _116247, _116247), (_116246, _116248, _116248))), (_116241, (_116249, (_116250, _116251, _116251), (_116250, _116252, _116252)), (_116249, (_116253, _116254, _116254), (_116253, _116255, _116255)))))))), (_116256, (_116259, (_116260, (_116261, (_116262, (_116263, (_116264, (_116265, _116266, _116266), (_116265, _116267, _116267)), (_116264, (_116268, _116269, _116269), (_116268, _116270, _116270))), (_116263, (_116271, (_116272, _116273, _116273), (_116272, _116274, _116274)), (_116271, (_116275, _116276, _116276), (_116275, _116277, _116277)))), (_116262, (_116278, (_116279, (_116280, _116281, _116281), (_116280, _116282, _116282)), (_116279, (_116283, _116284, _116284), (_116283, _116285, _116285))), (_116278, (_116286, (_116287, _116288, _116288), (_116287, _116289, _116289)), (_116286, (_116290, _116291, _116291), (_116290, _116292, _116292))))), (_116261, (_116293, (_116294, (_116295, (_116296, _116297, _116297), (_116296, _116298, _116298)), (_116295, (_116299, _116300, _116300), (_116299, _116301, _116301))), (_116294, (_116302, (_116303, _116304, _116304), (_116303, _116305, _116305)), (_116302, (_116306, _116307, _116307), (_116306, _116308, _116308)))), (_116293, (_116309, (_116310, (_116311, _116312, _116312), (_116311, _116313, _116313)), (_116310, (_116314, _116315, _116315), (_116314, _116316, _116316))), (_116309, (_116317, (_116318, _116319, _116319), (_116318, _116320, _116320)), (_116317, (_116321, _116322, _116322), (_116321, _116323, _116323)))))), (_116260, (_116324, (_116325, (_116326, (_116327, (_116328, _116329, _116329), (_116328, _116330, _116330)), (_116327, (_116331, _116332, _116332), (_116331, _116333, _116333))), (_116326, (_116334, (_116335, _116336, _116336), (_116335, _116337, _116337)), (_116334, (_116338, _116339, _116339), (_116338, _116340, _116340)))), (_116325, (_116341, (_116342, (_116343, _116344, _116344), (_116343, _116345, _116345)), (_116342, (_116346, _116347, _116347), (_116346, _116348, _116348))), (_116341, (_116349, (_116350, _116351, _116351), (_116350, _116352, _116352)), (_116349, (_116353, _116354, _116354), (_116353, _116355, _116355))))), (_116324, (_116356, (_116357, (_116358, (_116359, _116360, _116360), (_116359, _116361, _116361)), (_116358, (_116362, _116363, _116363), (_116362, _116364, _116364))), (_116357, (_116365, (_116366, _116367, _116367), (_116366, _116368, _116368)), (_116365, (_116369, _116370, _116370), (_116369, _116371, _116371)))), (_116356, (_116372, (_116373, (_116374, _116375, _116375), (_116374, _116376, _116376)), (_116373, (_116377, _116378, _116378), (_116377, _116379, _116379))), (_116372, (_116380, (_116381, _116382, _116382), (_116381, _116383, _116383)), (_116380, (_116384, _116385, _116385), (_116384, _116386, _116386))))))), (_116259, (_116387, (_116388, (_116389, (_116390, (_116391, (_116392, _116393, _116393), (_116392, _116394, _116394)), (_116391, (_116395, _116396, _116396), (_116395, _116397, _116397))), (_116390, (_116398, (_116399, _116400, _116400), (_116399, _116401, _116401)), (_116398, (_116402, _116403, _116403), (_116402, _116404, _116404)))), (_116389, (_116405, (_116406, (_116407, _116408, _116408), (_116407, _116409, _116409)), (_116406, (_116410, _116411, _116411), (_116410, _116412, _116412))), (_116405, (_116413, (_116414, _116415, _116415), (_116414, _116416, _116416)), (_116413, (_116417, _116418, _116418), (_116417, _116419, _116419))))), (_116388, (_116420, (_116421, (_116422, (_116423, _116424, _116424), (_116423, _116425, _116425)), (_116422, (_116426, _116427, _116427), (_116426, _116428, _116428))), (_116421, (_116429, (_116430, _116431, _116431), (_116430, _116432, _116432)), (_116429, (_116433, _116434, _116434), (_116433, _116435, _116435)))), (_116420, (_116436, (_116437, (_116438, _116439, _116439), (_116438, _116440, _116440)), (_116437, (_116441, _116442, _116442), (_116441, _116443, _116443))), (_116436, (_116444, (_116445, _116446, _116446), (_116445, _116447, _116447)), (_116444, (_116448, _116449, _116449), (_116448, _116450, _116450)))))), (_116387, (_116451, (_116452, (_116453, (_116454, (_116455, _116456, _116456), (_116455, _116457, _116457)), (_116454, (_116458, _116459, _116459), (_116458, _116460, _116460))), (_116453, (_116461, (_116462, _116463, _116463), (_116462, _116464, _116464)), (_116461, (_116465, _116466, _116466), (_116465, _116467, _116467)))), (_116452, (_116468, (_116469, (_116470, _116471, _116471), (_116470, _116472, _116472)), (_116469, (_116473, _116474, _116474), (_116473, _116475, _116475))), (_116468, (_116476, (_116477, _116478, _116478), (_116477, _116479, _116479)), (_116476, (_116480, _116481, _116481), (_116480, _116482, _116482))))), (_116451, (_116483, (_116484, (_116485, (_116486, _116487, _116487), (_116486, _116488, _116488)), (_116485, (_116489, _116490, _116490), (_116489, _116491, _116491))), (_116484, (_116492, (_116493, _116494, _116494), (_116493, _116495, _116495)), (_116492, (_116496, _116497, _116497), (_116496, _116498, _116498)))), (_116483, (_116499, (_116500, (_116501, _116502, _116502), (_116501, _116503, _116503)), (_116500, (_116504, _116505, _116505), (_116504, _116506, _116506))), (_116499, (_116507, (_116508, _116509, _116509), (_116508, _116510, _116510)), (_116507, (_116511, _116512, _116512), (_116511, _116513, _116513))))))))) -> t ;
+1 g_rec :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169] => (_116 -> _1161 -> _1162 -> _1169 -> t) -> (_1167 -> _1163 -> _1164 -> _1165 -> t) -> _1166 -> _116 -> (_1166, _1163, _1167) -> (_1168, _1169, _1165) -> _1168 ;
+1 g_rec0 :: __forall [t] => t -> t -> t -> t -> t ;
+1 g_rec1 :: __forall [t _116 _1161] => _1161 -> _116 -> (_1161, _116, _116) -> (t, _116, _116) -> t ;
+1 g_rec2 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165] => _1165 -> _116 -> (_1165, _1164, _1163) -> (t, (_1162, _1161, _1161), (_1162, _1164, _1164)) -> t ;
+1 g_rec3 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169 _11610] => _11610 -> _116 -> (_11610, _1166, _1165) -> (t, (_1164, (_1162, _1163, _1163), (_1162, _1161, _1161)), (_1164, (_1168, _1169, _1169), (_1168, _1167, _1167))) -> t ;
+1 g_rec4 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169 _11610 _11611 _11612 _11613 _11614 _11615 _11616 _11617 _11618] => _11618 -> _116 -> (_11618, _11610, _1169) -> (t, (_1168, (_1161, (_1162, _1163, _1163), (_1162, _1164, _1164)), (_1161, (_1165, _1166, _1166), (_1165, _1167, _1167))), (_1168, (_11611, (_11612, _11613, _11613), (_11612, _11614, _11614)), (_11611, (_11615, _11616, _11616), (_11615, _11617, _11617)))) -> t ;
+1 g_rec5 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169 _11610 _11611 _11612 _11613 _11614 _11615 _11616 _11617 _11618 _11619 _11620 _11621 _11622 _11623 _11624 _11625 _11626 _11627 _11628 _11629 _11630 _11631 _11632 _11633 _11634] => _11634 -> _116 -> (_11634, _11618, _11617) -> (t, (_11616, (_1161, (_1162, (_1163, _1164, _1164), (_1163, _1165, _1165)), (_1162, (_1166, _1167, _1167), (_1166, _1168, _1168))), (_1161, (_1169, (_11610, _11611, _11611), (_11610, _11612, _11612)), (_1169, (_11613, _11614, _11614), (_11613, _11615, _11615)))), (_11616, (_11619, (_11620, (_11621, _11622, _11622), (_11621, _11623, _11623)), (_11620, (_11624, _11625, _11625), (_11624, _11626, _11626))), (_11619, (_11627, (_11628, _11629, _11629), (_11628, _11630, _11630)), (_11627, (_11631, _11632, _11632), (_11631, _11633, _11633))))) -> t ;
+1 g_rec6 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169 _11610 _11611 _11612 _11613 _11614 _11615 _11616 _11617 _11618 _11619 _11620 _11621 _11622 _11623 _11624 _11625 _11626 _11627 _11628 _11629 _11630 _11631 _11632 _11633 _11634 _11635 _11636 _11637 _11638 _11639 _11640 _11641 _11642 _11643 _11644 _11645 _11646 _11647 _11648 _11649 _11650 _11651 _11652 _11653 _11654 _11655 _11656 _11657 _11658 _11659 _11660 _11661 _11662 _11663 _11664 _11665 _11666] => _11666 -> _116 -> (_11666, _11634, _11633) -> (t, (_11632, (_1161, (_1162, (_1163, (_1164, _1165, _1165), (_1164, _1166, _1166)), (_1163, (_1167, _1168, _1168), (_1167, _1169, _1169))), (_1162, (_11610, (_11611, _11612, _11612), (_11611, _11613, _11613)), (_11610, (_11614, _11615, _11615), (_11614, _11616, _11616)))), (_1161, (_11617, (_11618, (_11619, _11620, _11620), (_11619, _11621, _11621)), (_11618, (_11622, _11623, _11623), (_11622, _11624, _11624))), (_11617, (_11625, (_11626, _11627, _11627), (_11626, _11628, _11628)), (_11625, (_11629, _11630, _11630), (_11629, _11631, _11631))))), (_11632, (_11635, (_11636, (_11637, (_11638, _11639, _11639), (_11638, _11640, _11640)), (_11637, (_11641, _11642, _11642), (_11641, _11643, _11643))), (_11636, (_11644, (_11645, _11646, _11646), (_11645, _11647, _11647)), (_11644, (_11648, _11649, _11649), (_11648, _11650, _11650)))), (_11635, (_11651, (_11652, (_11653, _11654, _11654), (_11653, _11655, _11655)), (_11652, (_11656, _11657, _11657), (_11656, _11658, _11658))), (_11651, (_11659, (_11660, _11661, _11661), (_11660, _11662, _11662)), (_11659, (_11663, _11664, _11664), (_11663, _11665, _11665)))))) -> t ;
+1 g_rec7 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169 _11610 _11611 _11612 _11613 _11614 _11615 _11616 _11617 _11618 _11619 _11620 _11621 _11622 _11623 _11624 _11625 _11626 _11627 _11628 _11629 _11630 _11631 _11632 _11633 _11634 _11635 _11636 _11637 _11638 _11639 _11640 _11641 _11642 _11643 _11644 _11645 _11646 _11647 _11648 _11649 _11650 _11651 _11652 _11653 _11654 _11655 _11656 _11657 _11658 _11659 _11660 _11661 _11662 _11663 _11664 _11665 _11666 _11667 _11668 _11669 _11670 _11671 _11672 _11673 _11674 _11675 _11676 _11677 _11678 _11679 _11680 _11681 _11682 _11683 _11684 _11685 _11686 _11687 _11688 _11689 _11690 _11691 _11692 _11693 _11694 _11695 _11696 _11697 _11698 _11699 _116100 _116101 _116102 _116103 _116104 _116105 _116106 _116107 _116108 _116109 _116110 _116111 _116112 _116113 _116114 _116115 _116116 _116117 _116118 _116119 _116120 _116121 _116122 _116123 _116124 _116125 _116126 _116127 _116128 _116129 _116130] => _116130 -> _116 -> (_116130, _11666, _11665) -> (t, (_11664, (_1161, (_1162, (_1163, (_1164, (_1165, _1166, _1166), (_1165, _1167, _1167)), (_1164, (_1168, _1169, _1169), (_1168, _11610, _11610))), (_1163, (_11611, (_11612, _11613, _11613), (_11612, _11614, _11614)), (_11611, (_11615, _11616, _11616), (_11615, _11617, _11617)))), (_1162, (_11618, (_11619, (_11620, _11621, _11621), (_11620, _11622, _11622)), (_11619, (_11623, _11624, _11624), (_11623, _11625, _11625))), (_11618, (_11626, (_11627, _11628, _11628), (_11627, _11629, _11629)), (_11626, (_11630, _11631, _11631), (_11630, _11632, _11632))))), (_1161, (_11633, (_11634, (_11635, (_11636, _11637, _11637), (_11636, _11638, _11638)), (_11635, (_11639, _11640, _11640), (_11639, _11641, _11641))), (_11634, (_11642, (_11643, _11644, _11644), (_11643, _11645, _11645)), (_11642, (_11646, _11647, _11647), (_11646, _11648, _11648)))), (_11633, (_11649, (_11650, (_11651, _11652, _11652), (_11651, _11653, _11653)), (_11650, (_11654, _11655, _11655), (_11654, _11656, _11656))), (_11649, (_11657, (_11658, _11659, _11659), (_11658, _11660, _11660)), (_11657, (_11661, _11662, _11662), (_11661, _11663, _11663)))))), (_11664, (_11667, (_11668, (_11669, (_11670, (_11671, _11672, _11672), (_11671, _11673, _11673)), (_11670, (_11674, _11675, _11675), (_11674, _11676, _11676))), (_11669, (_11677, (_11678, _11679, _11679), (_11678, _11680, _11680)), (_11677, (_11681, _11682, _11682), (_11681, _11683, _11683)))), (_11668, (_11684, (_11685, (_11686, _11687, _11687), (_11686, _11688, _11688)), (_11685, (_11689, _11690, _11690), (_11689, _11691, _11691))), (_11684, (_11692, (_11693, _11694, _11694), (_11693, _11695, _11695)), (_11692, (_11696, _11697, _11697), (_11696, _11698, _11698))))), (_11667, (_11699, (_116100, (_116101, (_116102, _116103, _116103), (_116102, _116104, _116104)), (_116101, (_116105, _116106, _116106), (_116105, _116107, _116107))), (_116100, (_116108, (_116109, _116110, _116110), (_116109, _116111, _116111)), (_116108, (_116112, _116113, _116113), (_116112, _116114, _116114)))), (_11699, (_116115, (_116116, (_116117, _116118, _116118), (_116117, _116119, _116119)), (_116116, (_116120, _116121, _116121), (_116120, _116122, _116122))), (_116115, (_116123, (_116124, _116125, _116125), (_116124, _116126, _116126)), (_116123, (_116127, _116128, _116128), (_116127, _116129, _116129))))))) -> t ;
+1 g_rec8 :: __forall [t _116 _1161 _1162 _1163 _1164 _1165 _1166 _1167 _1168 _1169 _11610 _11611 _11612 _11613 _11614 _11615 _11616 _11617 _11618 _11619 _11620 _11621 _11622 _11623 _11624 _11625 _11626 _11627 _11628 _11629 _11630 _11631 _11632 _11633 _11634 _11635 _11636 _11637 _11638 _11639 _11640 _11641 _11642 _11643 _11644 _11645 _11646 _11647 _11648 _11649 _11650 _11651 _11652 _11653 _11654 _11655 _11656 _11657 _11658 _11659 _11660 _11661 _11662 _11663 _11664 _11665 _11666 _11667 _11668 _11669 _11670 _11671 _11672 _11673 _11674 _11675 _11676 _11677 _11678 _11679 _11680 _11681 _11682 _11683 _11684 _11685 _11686 _11687 _11688 _11689 _11690 _11691 _11692 _11693 _11694 _11695 _11696 _11697 _11698 _11699 _116100 _116101 _116102 _116103 _116104 _116105 _116106 _116107 _116108 _116109 _116110 _116111 _116112 _116113 _116114 _116115 _116116 _116117 _116118 _116119 _116120 _116121 _116122 _116123 _116124 _116125 _116126 _116127 _116128 _116129 _116130 _116131 _116132 _116133 _116134 _116135 _116136 _116137 _116138 _116139 _116140 _116141 _116142 _116143 _116144 _116145 _116146 _116147 _116148 _116149 _116150 _116151 _116152 _116153 _116154 _116155 _116156 _116157 _116158 _116159 _116160 _116161 _116162 _116163 _116164 _116165 _116166 _116167 _116168 _116169 _116170 _116171 _116172 _116173 _116174 _116175 _116176 _116177 _116178 _116179 _116180 _116181 _116182 _116183 _116184 _116185 _116186 _116187 _116188 _116189 _116190 _116191 _116192 _116193 _116194 _116195 _116196 _116197 _116198 _116199 _116200 _116201 _116202 _116203 _116204 _116205 _116206 _116207 _116208 _116209 _116210 _116211 _116212 _116213 _116214 _116215 _116216 _116217 _116218 _116219 _116220 _116221 _116222 _116223 _116224 _116225 _116226 _116227 _116228 _116229 _116230 _116231 _116232 _116233 _116234 _116235 _116236 _116237 _116238 _116239 _116240 _116241 _116242 _116243 _116244 _116245 _116246 _116247 _116248 _116249 _116250 _116251 _116252 _116253 _116254 _116255 _116256 _116257 _116258] => _116258 -> _116 -> (_116258, _116130, _116129) -> (t, (_116128, (_1161, (_1162, (_1163, (_1164, (_1165, (_1166, _1167, _1167), (_1166, _1168, _1168)), (_1165, (_1169, _11610, _11610), (_1169, _11611, _11611))), (_1164, (_11612, (_11613, _11614, _11614), (_11613, _11615, _11615)), (_11612, (_11616, _11617, _11617), (_11616, _11618, _11618)))), (_1163, (_11619, (_11620, (_11621, _11622, _11622), (_11621, _11623, _11623)), (_11620, (_11624, _11625, _11625), (_11624, _11626, _11626))), (_11619, (_11627, (_11628, _11629, _11629), (_11628, _11630, _11630)), (_11627, (_11631, _11632, _11632), (_11631, _11633, _11633))))), (_1162, (_11634, (_11635, (_11636, (_11637, _11638, _11638), (_11637, _11639, _11639)), (_11636, (_11640, _11641, _11641), (_11640, _11642, _11642))), (_11635, (_11643, (_11644, _11645, _11645), (_11644, _11646, _11646)), (_11643, (_11647, _11648, _11648), (_11647, _11649, _11649)))), (_11634, (_11650, (_11651, (_11652, _11653, _11653), (_11652, _11654, _11654)), (_11651, (_11655, _11656, _11656), (_11655, _11657, _11657))), (_11650, (_11658, (_11659, _11660, _11660), (_11659, _11661, _11661)), (_11658, (_11662, _11663, _11663), (_11662, _11664, _11664)))))), (_1161, (_11665, (_11666, (_11667, (_11668, (_11669, _11670, _11670), (_11669, _11671, _11671)), (_11668, (_11672, _11673, _11673), (_11672, _11674, _11674))), (_11667, (_11675, (_11676, _11677, _11677), (_11676, _11678, _11678)), (_11675, (_11679, _11680, _11680), (_11679, _11681, _11681)))), (_11666, (_11682, (_11683, (_11684, _11685, _11685), (_11684, _11686, _11686)), (_11683, (_11687, _11688, _11688), (_11687, _11689, _11689))), (_11682, (_11690, (_11691, _11692, _11692), (_11691, _11693, _11693)), (_11690, (_11694, _11695, _11695), (_11694, _11696, _11696))))), (_11665, (_11697, (_11698, (_11699, (_116100, _116101, _116101), (_116100, _116102, _116102)), (_11699, (_116103, _116104, _116104), (_116103, _116105, _116105))), (_11698, (_116106, (_116107, _116108, _116108), (_116107, _116109, _116109)), (_116106, (_116110, _116111, _116111), (_116110, _116112, _116112)))), (_11697, (_116113, (_116114, (_116115, _116116, _116116), (_116115, _116117, _116117)), (_116114, (_116118, _116119, _116119), (_116118, _116120, _116120))), (_116113, (_116121, (_116122, _116123, _116123), (_116122, _116124, _116124)), (_116121, (_116125, _116126, _116126), (_116125, _116127, _116127))))))), (_116128, (_116131, (_116132, (_116133, (_116134, (_116135, (_116136, _116137, _116137), (_116136, _116138, _116138)), (_116135, (_116139, _116140, _116140), (_116139, _116141, _116141))), (_116134, (_116142, (_116143, _116144, _116144), (_116143, _116145, _116145)), (_116142, (_116146, _116147, _116147), (_116146, _116148, _116148)))), (_116133, (_116149, (_116150, (_116151, _116152, _116152), (_116151, _116153, _116153)), (_116150, (_116154, _116155, _116155), (_116154, _116156, _116156))), (_116149, (_116157, (_116158, _116159, _116159), (_116158, _116160, _116160)), (_116157, (_116161, _116162, _116162), (_116161, _116163, _116163))))), (_116132, (_116164, (_116165, (_116166, (_116167, _116168, _116168), (_116167, _116169, _116169)), (_116166, (_116170, _116171, _116171), (_116170, _116172, _116172))), (_116165, (_116173, (_116174, _116175, _116175), (_116174, _116176, _116176)), (_116173, (_116177, _116178, _116178), (_116177, _116179, _116179)))), (_116164, (_116180, (_116181, (_116182, _116183, _116183), (_116182, _116184, _116184)), (_116181, (_116185, _116186, _116186), (_116185, _116187, _116187))), (_116180, (_116188, (_116189, _116190, _116190), (_116189, _116191, _116191)), (_116188, (_116192, _116193, _116193), (_116192, _116194, _116194)))))), (_116131, (_116195, (_116196, (_116197, (_116198, (_116199, _116200, _116200), (_116199, _116201, _116201)), (_116198, (_116202, _116203, _116203), (_116202, _116204, _116204))), (_116197, (_116205, (_116206, _116207, _116207), (_116206, _116208, _116208)), (_116205, (_116209, _116210, _116210), (_116209, _116211, _116211)))), (_116196, (_116212, (_116213, (_116214, _116215, _116215), (_116214, _116216, _116216)), (_116213, (_116217, _116218, _116218), (_116217, _116219, _116219))), (_116212, (_116220, (_116221, _116222, _116222), (_116221, _116223, _116223)), (_116220, (_116224, _116225, _116225), (_116224, _116226, _116226))))), (_116195, (_116227, (_116228, (_116229, (_116230, _116231, _116231), (_116230, _116232, _116232)), (_116229, (_116233, _116234, _116234), (_116233, _116235, _116235))), (_116228, (_116236, (_116237, _116238, _116238), (_116237, _116239, _116239)), (_116236, (_116240, _116241, _116241), (_116240, _116242, _116242)))), (_116227, (_116243, (_116244, (_116245, _116246, _116246), (_116245, _116247, _116247)), (_116244, (_116248, _116249, _116249), (_116248, _116250, _116250))), (_116243, (_116251, (_116252, _116253, _116253), (_116252, _116254, _116254)), (_116251, (_116255, _116256, _116256), (_116255, _116257, _116257)))))))) -> t ;
+1 head :: __forall [t] => [t] -> t ;
+1 one :: __forall [t] => t ;
+1 s_1_0 :: __forall [t] => t -> t ;
+1 s_2_0 :: __forall [t _116] => (t, _116) -> t ;
+1 s_2_1 :: __forall [t _116] => (_116, t) -> t ;
+1 s_3_0 :: __forall [t _116 _1161] => (t, _116, _1161) -> t ;
+1 s_3_1 :: __forall [t _116 _1161] => (_116, t, _1161) -> t ;
+1 s_3_2 :: __forall [t _116 _1161] => (_116, _1161, t) -> t ;
index a69fc17..f64b39f 100644 (file)
@@ -1,6 +1,4 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed a b;
-_declarations_
-1 a _:_ _forall_ [$a] {PrelBase.Ord $a} => $a ;;
-1 b _:_ _forall_ [$a] {PrelBase.Ord $a} => $a ;;
+__export ShouldSucceed a b;
+1 a :: __forall [f] {PrelBase.Ord f} => f ;
+1 b :: __forall [f] {PrelBase.Ord f} => f ;
index eb52c16..628b571 100644 (file)
@@ -1,4 +1,4 @@
---!!! Test polymorphic recursion
+-- !!! Test polymorphic recursion
 
 
 -- With polymorphic recursion this one becomes legal
index fe869c2..769af0a 100644 (file)
@@ -1,7 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed init_last merge sort;
-_declarations_
-1 init_last _:_ _forall_ [$a] => [$a] -> PrelBase.Int -> ([$a], [$a]) ;;
-1 merge _:_ _forall_ [$a] {PrelBase.Ord $a} => [$a] -> [$a] -> [$a] ;;
-1 sort _:_ _forall_ [$a] {PrelBase.Ord $a} => [$a] -> [$a] ;;
+__export ShouldSucceed init_last merge sort;
+1 init_last :: __forall [a] => [a] -> PrelBase.Int -> ([a], [a]) ;
+1 merge :: __forall [a] {PrelBase.Ord a} => [a] -> [a] -> [a] ;
+1 sort :: __forall [a] {PrelBase.Ord a} => [a] -> [a] ;
index caffe4b..13e620d 100644 (file)
@@ -1,9 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed e0 e1 e2 q Empty{Empty};
-_declarations_
-1 data Empty $r3H :: (* -> *) = Empty (_forall_ [$r3K] {PrelBase.Ord $r3K} => $r3H $r3K) ;
-1 e0 _:_ Empty PrelBase.[] ;;
-1 e1 _:_ Empty PrelBase.[] ;;
-1 e2 _:_ Empty PrelBase.[] ;;
-1 q _:_ _forall_ [$a] {PrelBase.Ord $a} => [$a] ;;
+__export ShouldSucceed e0 e1 e2 q Empty{Empty};
+1 data Empty q :: (* -> *) = Empty (__forall [a] {PrelBase.Ord a} => q a) ;
+1 e0 :: Empty PrelBase.[] ;
+1 e1 :: Empty PrelBase.[] ;
+1 e2 :: Empty PrelBase.[] ;
+1 q :: __forall [a] {PrelBase.Ord a} => [a] ;
index f9a5179..c834428 100644 (file)
@@ -19,7 +19,7 @@ instance Eq c => Monad (State c) where
 
 data TS = TS { vs::Int } deriving (Show,Eq)
 
-type St = State TS
+type St a = State TS a
 
 foo :: Int -> St Int  -- it works if this line is not given
 foo x = return x
index cfc536c..a9bb9f8 100644 (file)
@@ -1,20 +1,15 @@
-
-uniqAway: 1 tries
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed bindState foo unState unitState St State{State} TS{TS vs};
-_instances_
-instance {PrelBase.Eq TS} = $dEqTS0;
-instance _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Monad (State $a)} = $dMonadState0;
-instance {PrelBase.Show TS} = $dShowTS0;
-_declarations_
-1 $dEqTS0 _:_ {PrelBase.Eq TS} ;;
-1 $dMonadState0 _:_ _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Monad (State $a)} ;;
-1 $dShowTS0 _:_ {PrelBase.Show TS} ;;
-1 bindState _:_ _forall_ [$a $b $c] => State $a $b -> ($b -> State $a $c) -> State $a $c ;;
-1 data State $r4h $r4i = State ($r4h -> ($r4i, $r4h)) ;
+__export ShouldSucceed bindState foo unState unitState St State{State} TS{TS vs};
+instance {PrelBase.Eq TS} = _fEqTS;
+instance __forall [c] {PrelBase.Eq c} => {PrelBase.Monad (State c)} = _fMonadState;
+instance {PrelBase.Show TS} = _fShowTS;
+1 _fEqTS :: {PrelBase.Eq TS} ;
+1 _fMonadState :: __forall [c] {PrelBase.Eq c} => {PrelBase.Monad (State c)} ;
+1 _fShowTS :: {PrelBase.Show TS} ;
+1 bindState :: __forall [c a b] => State c a -> (a -> State c b) -> State c b ;
+1 data State c a = State (c -> (a, c)) ;
 1 data TS = TS {vs :: PrelBase.Int} ;
-1 foo _:_ PrelBase.Int -> State TS PrelBase.Int ;;
-1 type St = State TS ;
-1 unState _:_ _forall_ [$a $b] => State $a $b -> $a -> ($b, $a) ;;
-1 unitState _:_ _forall_ [$a $b] => $a -> State $b $a ;;
+1 foo :: PrelBase.Int -> St PrelBase.Int ;
+1 type St a = State TS a ;
+1 unState :: __forall [c a] => State c a -> c -> (a, c) ;
+1 unitState :: __forall [a c] => a -> State c a ;
index 5989722..e5a8df1 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
-_exports_
-ShouldSucceed foo;
-_declarations_
-1 foo _:_ _forall_ [a] => a -> (PrelBase.Int, PrelBase.Int) ;;
+__export ShouldSucceed foo;
+1 foo :: __forall [t] => t -> (PrelBase.Integer, PrelBase.Integer) ;
index 95205ba..1ac333c 100644 (file)
@@ -33,7 +33,7 @@ data HappyAbsSyn t1 t2 t3
        | HappyAbsSyn2 t2
        | HappyAbsSyn3 t3
 
-action_0 (6) = happyShift action_3        ---*****
+action_0 (6) = happyShift action_3        --- *****
 action_0 (1) = happyGoto action_1
 action_0 (2) = happyGoto action_2
 action_0 _ = happyFail
@@ -106,7 +106,7 @@ data Token  =
             deriving Show
 
 main = print (myparser [] [])
--- $Id: tc095.hs,v 1.1 1998/02/23 15:35:31 simonm Exp $
+-- $Id: tc095.hs,v 1.2 1999/01/23 17:58:16 sof Exp $
 
 {-
        The stack is in the following order throughout the parse:
index ffb41d3..165c5bd 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldSucceed where
 
---!!! monomorphism restriction and defaulting
+-- !!! monomorphism restriction and defaulting
 
 x = 3
 
index fac0101..448e631 100644 (file)
@@ -1,4 +1,4 @@
---!!! Local universal quantification.
+-- !!! Local universal quantification.
 module ShouldSucceed where
 
 import PrelGHC -- to get at All
index 5fc404b..f870caa 100644 (file)
@@ -1,4 +1,4 @@
---!!! Ambiguity in local declarations
+-- !!! Ambiguity in local declarations
 
 module ShouldSucceed where
 
index a52d489..81c1a1f 100644 (file)
@@ -1,4 +1,4 @@
---!!! trying to have a polymorphic type sig where inappropriate
+-- !!! trying to have a polymorphic type sig where inappropriate
 --
 module Digraph where
 
index e4a2017..f28161f 100644 (file)
@@ -1,31 +1,35 @@
  
 Digraph.hs:19:
     Inferred type is less polymorphic than expected
-       Quantified type variable `vertex' escapes; i.e. unifies with something more global
-    When checking the type signature for `reversed_edges'
-       Signature: [Edge v]
-       Inferred:  [Edge vertex]
+       Quantified type variable `v' escapes
+       It unifies with `vertex', which is mentioned in the environment
+       The following variables in the environment mention `vertex'
+           es :: [Edge vertex]
+           vs :: [vertex]
+    When checking the type signature
+       reversed_edges :: forall _118. {PrelBase.Eq _118} => [Edge _118]
     In an equation for function `stronglyConnComp':
        stronglyConnComp es vs
-                        = snd (span_tree (new_range reversed_edges)
-                                         ([], [])
-                                         (snd (dfs (new_range es) ([], []) vs)))
-                        where
-                            span_tree r (vs, ns) [] = (vs, ns)
-                            span_tree r (vs, ns) (x : xs)
-                                      | x `elem` vs = span_tree r (vs, ns) xs
-                                      | otherwise = span_tree r (vs', (x : ns') : ns) xs
-                                      where
-                                          (vs', ns') = dfs r (x : vs, []) (r x)
-                            new_range [] w = []
-                            new_range ((x, y) : xys) w
-                                      = if x == w then
-                                            (y : (new_range xys w))
-                                        else
-                                            (new_range xys w)
-                            swap (x, y) = (y, x)
-                            reversed_edges :: forall v. (PrelBase.Eq v) => [Edge v]
-                            reversed_edges = map swap es
+                          = snd (span_tree (new_range reversed_edges)
+                                           ([], [])
+                                           (snd (dfs (new_range es) ([], []) vs)))
+                          where
+                              span_tree r (vs, ns) [] = (vs, ns)
+                              span_tree r (vs, ns) (x : xs)
+                                          | x `elem` vs = span_tree r (vs, ns) xs
+                                          | otherwise = span_tree r (vs', (x : ns') : ns) xs
+                                          where
+                                              (vs', ns') = dfs r (x : vs, []) (r x)
+                              new_range [] w = []
+                              new_range ((x, y) : xys) w
+                                          = if x == w then
+                                                (y : (new_range xys w))
+                                            else
+                                                (new_range xys w)
+                              swap (x, y) = (y, x)
+                              reversed_edges :: forall v. (Eq v) => [Edge v]
+                              reversed_edges = map swap es
 
 
 Compilation had errors
+
index a90d230..4e3e130 100644 (file)
@@ -1,5 +1,5 @@
---!!! This should fail with a type error: the instance method
---!!! has a function type when it should have the type [a].
+-- !!! This should fail with a type error: the instance method
+-- !!! has a function type when it should have the type [a].
 module ShouldFail where
 
 class A a where
index 12c88e6..a577ffb 100644 (file)
@@ -4,11 +4,12 @@ tcfail001.hs:9: Warning:
 
  
 tcfail001.hs:9:
-    Couldn't match `[a]' against `$0 -> $1'
+    Couldn't match `[a]' against `t -> _116'
        Expected type: [a]
-       Inferred type: $0 -> $1
+       Inferred type: t -> _116
     In an equation for function `op': op [] = []
     In the definition for method `op'
 
 
 Compilation had errors
+
index 5fa5936..227b2f4 100644 (file)
@@ -1,9 +1,10 @@
  
 tcfail002.hs:4:
-    Occurs check: cannot construct the infinite type: $0 = [$0]
-       Expected type: $0
-       Inferred type: [$0]
+    Occurs check: cannot construct the infinite type: t = [t]
+       Expected type: t
+       Inferred type: [t]
     In the right-hand side of an equation for `c': z
 
 
 Compilation had errors
+
index c3bc95c..2cb11fc 100644 (file)
@@ -1,7 +1,8 @@
  
 tcfail003.hs:3:
-    No instance for `Num Char'
+    No instance for `PrelBase.Num Char'
        arising from the literal `1' at tcfail003.hs:3
 
 
 Compilation had errors
+
index 464687e..a8a9457 100644 (file)
@@ -1,9 +1,10 @@
  
 tcfail004.hs:3:
-    Couldn't match `($0, $1)' against `($2, $3, $4)'
-       Expected type: ($0, $1)
-       Inferred type: ($2, $3, $4)
+    Couldn't match `(t, _116)' against `(_1161, _1162, _1163)'
+       Expected type: (t, _116)
+       Inferred type: (_1161, _1162, _1163)
     In the right-hand side of a pattern binding: (1, 2, 3)
 
 
 Compilation had errors
+
index c9e6fa8..f2c2741 100644 (file)
@@ -1,9 +1,10 @@
  
 tcfail005.hs:3:
-    Couldn't match `[$0]' against `($1, $2)'
-       Expected type: [$0]
-       Inferred type: ($1, $2)
+    Couldn't match `[t]' against `(_116, _1161)'
+       Expected type: [t]
+       Inferred type: (_116, _1161)
     In the right-hand side of a pattern binding: (1, 'a')
 
 
 Compilation had errors
+
index fb669e5..29cce73 100644 (file)
@@ -1,7 +1,8 @@
  
 tcfail006.hs:4:
-    No instance for `Num Bool'
+    No instance for `PrelBase.Num Bool'
        arising from the literal `1' at tcfail006.hs:4
 
 
 Compilation had errors
+
index ff82761..435c825 100644 (file)
@@ -1,7 +1,8 @@
  
-tcfail007.hs:4:
-    No instance for `Num Bool'
-       arising from use of `+' at tcfail007.hs:4
+tcfail007.hs:3:
+    No instance for `PrelBase.Num Bool'
+       arising from use of `PrelBase.+' at tcfail007.hs:3
 
 
 Compilation had errors
+
index 8a852ef..a7f15d6 100644 (file)
@@ -1,13 +1,14 @@
  
 tcfail008.hs:3:
-    Ambiguous type variable(s) `$0'
-       in the constraint `Num [$0]'
+    Ambiguous type variable(s) `t'
+       in the constraint `PrelBase.Num [t]'
        arising from the literal `2' at tcfail008.hs:3
  
 tcfail008.hs:3:
-    Ambiguous type variable(s) `$0'
-       in the constraint `Num $0'
+    Ambiguous type variable(s) `t'
+       in the constraint `PrelBase.Num t'
        arising from the literal `1' at tcfail008.hs:3
 
 
 Compilation had errors
+
index 41a77c4..14e30ff 100644 (file)
@@ -1,8 +1,9 @@
  
 tcfail010.hs:3:
-    Ambiguous type variable(s) `$0'
-       in the constraint `Num [$0]'
-       arising from use of `+' at tcfail010.hs:3
+    Ambiguous type variable(s) `t'
+       in the constraint `PrelBase.Num [t]'
+       arising from use of `PrelBase.+' at tcfail010.hs:3
 
 
 Compilation had errors
+
index 09cd1db..e172835 100644 (file)
@@ -1,9 +1,10 @@
  
 tcfail012.hs:3:
-    Couldn't match `Bool' against `[$0]'
+    Couldn't match `Bool' against `[t]'
        Expected type: Bool
-       Inferred type: [$0]
+       Inferred type: [t]
     In the right-hand side of a pattern binding: []
 
 
 Compilation had errors
+
index 327ceec..594cd49 100644 (file)
@@ -1,10 +1,11 @@
  
 tcfail013.hs:4:
-    Couldn't match `[$0]' against `Bool'
-       Expected type: [$0]
+    Couldn't match `[t]' against `Bool'
+       Expected type: [t]
        Inferred type: Bool
     In the pattern: True
     In an equation for function `f': f True = 2
 
 
 Compilation had errors
+
index 2793d7a..457dea5 100644 (file)
@@ -1,10 +1,11 @@
  
 tcfail014.hs:5:
-    Occurs check: cannot construct the infinite type: $0 = $0 -> $1
-       Expected type: $0
-       Inferred type: $0 -> $1
+    Occurs check: cannot construct the infinite type: t = t -> _116
+       Expected type: t
+       Inferred type: t -> _116
     In the first argument of `z', namely `z'
     In the right-hand side of an equation for `h': z z
 
 
 Compilation had errors
+
index 49fb603..d675738 100644 (file)
@@ -1,7 +1,8 @@
  
 tcfail015.hs:7:
-    No instance for `Num Bool'
+    No instance for `PrelBase.Num Bool'
        arising from the literal `2' at tcfail015.hs:7
 
 
 Compilation had errors
+
index f27a018..758417c 100644 (file)
@@ -1,10 +1,11 @@
  
 tcfail016.hs:9:
-    Couldn't match `Expr a' against `AnnExpr a1'
-       Expected type: Expr a1
-       Inferred type: AnnExpr a1
+    Couldn't match `Expr a' against `AnnExpr _97'
+       Expected type: Expr _97
+       Inferred type: AnnExpr _97
     In the first argument of `g', namely `e1'
     In the first argument of `++', namely `(g e1)'
 
 
 Compilation had errors
+
index f884ade..adc86a4 100644 (file)
@@ -2,10 +2,11 @@
 tcfail017.hs:11:
     Could not deduce `C [a]'
        (arising from an instance declaration at tcfail017.hs:11)
-       from the context (B a)
+       from the context: (B a)
     Probable cause: missing `C [a]' in instance declaration context
                    or missing instance declaration for `C [a]'
     When checking the superclasses of an instance declaration
 
 
 Compilation had errors
+
index d9b50e4..f645b9d 100644 (file)
@@ -1,8 +1,9 @@
  
 tcfail018.hs:5:
-    Ambiguous type variable(s) `$0'
-       in the constraint `Num [$0]'
+    Ambiguous type variable(s) `t'
+       in the constraint `PrelBase.Num [t]'
        arising from the literal `1' at tcfail018.hs:5
 
 
 Compilation had errors
+
index 5176f27..2788d89 100644 (file)
@@ -2,7 +2,7 @@
 tcfail019.hs:19:
     Could not deduce `C [a]'
        (arising from an instance declaration at tcfail019.hs:19)
-       from the context ()
+       from the context: ()
     Probable cause: missing `C [a]' in instance declaration context
                    or missing instance declaration for `C [a]'
     When checking the superclasses of an instance declaration
@@ -10,10 +10,11 @@ tcfail019.hs:19:
 tcfail019.hs:19:
     Could not deduce `B [a]'
        (arising from an instance declaration at tcfail019.hs:19)
-       from the context ()
+       from the context: ()
     Probable cause: missing `B [a]' in instance declaration context
                    or missing instance declaration for `B [a]'
     When checking the superclasses of an instance declaration
 
 
 Compilation had errors
+
index 855822f..1fe6f02 100644 (file)
@@ -2,10 +2,11 @@
 tcfail020.hs:11:
     Could not deduce `A [a]'
        (arising from an instance declaration at tcfail020.hs:11)
-       from the context (A a)
+       from the context: (A a)
     Probable cause: missing `A [a]' in instance declaration context
                    or missing instance declaration for `A [a]'
     When checking the superclasses of an instance declaration
 
 
 Compilation had errors
+
index de18ba5..af11b56 100644 (file)
@@ -1,4 +1,4 @@
---!!! Illegally giving methods in a pattern binding (for no v good reason...)
+-- !!! Illegally giving methods in a pattern binding (for no v good reason...)
 
 module ShouldFail where
 
index e9535be..ea8fe8b 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldFail where
 
---!!! Duplicate instances
+-- !!! Duplicate instances
 
 data B = C
 
index 344d0f3..283da45 100644 (file)
@@ -1,15 +1,15 @@
  
 tcfail023.hs:1:
     Duplicate or overlapping instance declarations
-       for `A B' at tcfail023.hs:14 and tcfail023.hs:11
+       for `A B' at tcfail023.hs:11 and tcfail023.hs:14
  
-tcfail023.hs:14:
+tcfail023.hs:11:
     Couldn't match `B' against `Bool'
        Expected type: B
        Inferred type: Bool
     In the right-hand side of an equation for `op': True
  
-tcfail023.hs:11:
+tcfail023.hs:14:
     Couldn't match `B' against `Bool'
        Expected type: B
        Inferred type: Bool
@@ -17,3 +17,4 @@ tcfail023.hs:11:
 
 
 Compilation had errors
+
index b80430b..b847c06 100644 (file)
@@ -1,4 +1,4 @@
---!!! tests for CycleErr in classes
+-- !!! tests for CycleErr in classes
 
 class (B a) => A a where
  op1 :: a -> a
index 8e8c294..3fb22ff 100644 (file)
@@ -1,3 +1,3 @@
---!!! tests for ArityErr
+-- !!! tests for ArityErr
 
 data A a b = B (A a)
index 2639267..3aa6f42 100644 (file)
@@ -1,10 +1,11 @@
  
 tcfail028.hs:4:
-    Couldn't match `*?' against `$0 -> *'
-       Expected kind: *?
-       Inferred kind: $0 -> *
-    In the type `A a'
-    In the data declaration for `A'
+    Couldn't match `Type t' against `k -> *'
+       Expected kind: Type t
+       Inferred kind: k -> *
+    When checking that `A a' is a type
+    In the newtype declaration for `A'
 
 
 Compilation had errors
+
index 4b8f2c6..14dd2d7 100644 (file)
@@ -1,4 +1,4 @@
---!!! tests for InstOpErr
+-- !!! tests for InstOpErr
 module ShouldFail where
 
 data Foo = Bar | Baz
index 2bca84f..5b997ac 100644 (file)
@@ -1,6 +1,8 @@
  
 tcfail029.hs:6:
-    No instance for `Ord Foo' arising from use of `>' at tcfail029.hs:6
+    No instance for `PrelBase.Ord Foo'
+       arising from use of `PrelBase.>' at tcfail029.hs:6
 
 
 Compilation had errors
+
index 6271ba5..5ad8a23 100644 (file)
@@ -1,6 +1 @@
-tcfail030.hs:0:
-    Module `Main' must include a definition for `Main.main'
-
-
-Compilation had errors
+tcfail030.hs:2:1: parse error on input: <EOF>
index 8601fba..d693416 100644 (file)
@@ -1,12 +1,17 @@
  
 tcfail032.hs:14:
     Inferred type is less polymorphic than expected
-       Quantified type variable `a' escapes; i.e. unifies with something more global
-    When checking the type signature for an expression
-       Signature: a -> Int
-       Inferred:  a -> Int
+       Quantified type variable `a' escapes
+       It is mentioned in the environment
+       The following variables in the environment mention `a'
+           x :: a -> Int
+    In an expression with expected type: forall
+                                        _97.
+                                        {PrelBase.Eq _97} =>
+                                        _97 -> Int
     In an expression with a type signature:
-         x :: forall a. (PrelBase.Eq a) => a -> Int
+         x :: forall a. (Eq a) => a -> Int
 
 
 Compilation had errors
+
index 35db1ce..94522fa 100644 (file)
@@ -1,9 +1,10 @@
  
 tcfail033.hs:4:
-    Occurs check: cannot construct the infinite type: $0 = ($0, $1)
-       Expected type: ($0, $1)
-       Inferred type: $0
+    Occurs check: cannot construct the infinite type: t = (t, _116)
+       Expected type: (t, _116)
+       Inferred type: t
     In a list-comprehension qualifier: return x
 
 
 Compilation had errors
+
index aaa795f..2a326aa 100644 (file)
@@ -1,10 +1,12 @@
  
 tcfail034.hs:17:
-    Could not deduce `Integral a'
-       (arising from use of `mod' at tcfail034.hs:17)
-       from the context (Num a, Eq a, test at [a])
-    Probable cause: missing `Integral a' in type signature for `test'
+    Could not deduce `PrelNum.Integral a'
+       (arising from use of `PrelNum.mod' at tcfail034.hs:17)
+       from the context: (PrelBase.Num a, PrelBase.Eq a)
+    Probable cause: missing `PrelNum.Integral a'
+                   in type signature for `test'
     When checking the type signature(s) for `test'
 
 
 Compilation had errors
+
index 555fa70..8de6786 100644 (file)
@@ -1,4 +1,4 @@
---!!! instances with empty where parts: duplicate
+-- !!! instances with empty where parts: duplicate
 --
 module ShouldFail where
 
index 10744cb..9db43b4 100644 (file)
@@ -1,64 +1,49 @@
  
-tcfail035.hs:9: Warning:
-    No explicit method nor default method for `showsPrec'
-    in an instance declaration for `Show'
+tcfail035.hs:6: Warning:
+    No explicit method nor default method for `PrelBase.fromInteger'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail035.hs:8: Warning:
-    No explicit method nor default method for `=='
-    in an instance declaration for `Eq'
+tcfail035.hs:6: Warning:
+    No explicit method nor default method for `PrelBase.signum'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail035.hs:7: Warning:
-    No explicit method nor default method for `fromInteger'
-    in an instance declaration for `Num'
+tcfail035.hs:6: Warning:
+    No explicit method nor default method for `PrelBase.abs'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail035.hs:7: Warning:
-    No explicit method nor default method for `signum'
-    in an instance declaration for `Num'
+tcfail035.hs:6: Warning:
+    No explicit method nor default method for `PrelBase.*'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail035.hs:7: Warning:
-    No explicit method nor default method for `abs'
-    in an instance declaration for `Num'
+tcfail035.hs:6: Warning:
+    No explicit method nor default method for `PrelBase.+'
+    in an instance declaration for `PrelBase.Num'
  
 tcfail035.hs:7: Warning:
-    No explicit method nor default method for `negate'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.fromInteger'
+    in an instance declaration for `PrelBase.Num'
  
 tcfail035.hs:7: Warning:
-    No explicit method nor default method for `*'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.signum'
+    in an instance declaration for `PrelBase.Num'
  
 tcfail035.hs:7: Warning:
-    No explicit method nor default method for `+'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.abs'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail035.hs:6: Warning:
-    No explicit method nor default method for `fromInteger'
-    in an instance declaration for `Num'
-tcfail035.hs:6: Warning:
-    No explicit method nor default method for `signum'
-    in an instance declaration for `Num'
-tcfail035.hs:6: Warning:
-    No explicit method nor default method for `abs'
-    in an instance declaration for `Num'
-tcfail035.hs:6: Warning:
-    No explicit method nor default method for `negate'
-    in an instance declaration for `Num'
-tcfail035.hs:6: Warning:
-    No explicit method nor default method for `*'
-    in an instance declaration for `Num'
+tcfail035.hs:7: Warning:
+    No explicit method nor default method for `PrelBase.*'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail035.hs:6: Warning:
-    No explicit method nor default method for `+'
-    in an instance declaration for `Num'
+tcfail035.hs:7: Warning:
+    No explicit method nor default method for `PrelBase.+'
+    in an instance declaration for `PrelBase.Num'
 
  
 tcfail035.hs:3:
     Duplicate or overlapping instance declarations
-       for `Num NUM' at tcfail035.hs:7 and tcfail035.hs:6
+       for `PrelBase.Num NUM' at tcfail035.hs:6 and tcfail035.hs:7
 
 
 Compilation had errors
+
index 3b316a7..ade1720 100644 (file)
@@ -1,4 +1,4 @@
---!!! prelude class name in an instance-tycon position
+-- !!! prelude class name in an instance-tycon position
 --
 module ShouldFail where
 
index bb262f4..175e247 100644 (file)
@@ -1,64 +1,57 @@
  
-tcfail036.hs:8: Warning:
-    No explicit method nor default method for `fromInteger'
-    in an instance declaration for `Num'
+tcfail036.hs:7: Warning:
+    No explicit method nor default method for `PrelBase.fromInteger'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail036.hs:8: Warning:
-    No explicit method nor default method for `signum'
-    in an instance declaration for `Num'
+tcfail036.hs:7: Warning:
+    No explicit method nor default method for `PrelBase.signum'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail036.hs:8: Warning:
-    No explicit method nor default method for `abs'
-    in an instance declaration for `Num'
+tcfail036.hs:7: Warning:
+    No explicit method nor default method for `PrelBase.abs'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail036.hs:8: Warning:
-    No explicit method nor default method for `negate'
-    in an instance declaration for `Num'
+tcfail036.hs:7: Warning:
+    No explicit method nor default method for `PrelBase.*'
+    in an instance declaration for `PrelBase.Num'
  
 tcfail036.hs:8: Warning:
-    No explicit method nor default method for `*'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.fromInteger'
+    in an instance declaration for `PrelBase.Num'
  
 tcfail036.hs:8: Warning:
-    No explicit method nor default method for `+'
-    in an instance declaration for `Num'
-tcfail036.hs:7: Warning:
-    No explicit method nor default method for `fromInteger'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.signum'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail036.hs:7: Warning:
-    No explicit method nor default method for `signum'
-    in an instance declaration for `Num'
-tcfail036.hs:7: Warning:
-    No explicit method nor default method for `abs'
-    in an instance declaration for `Num'
+tcfail036.hs:8: Warning:
+    No explicit method nor default method for `PrelBase.abs'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail036.hs:7: Warning:
-    No explicit method nor default method for `negate'
-    in an instance declaration for `Num'
+tcfail036.hs:8: Warning:
+    No explicit method nor default method for `PrelBase.*'
+    in an instance declaration for `PrelBase.Num'
  
-tcfail036.hs:7: Warning:
-    No explicit method nor default method for `*'
-    in an instance declaration for `Num'
+tcfail036.hs:8: Warning:
+    No explicit method nor default method for `PrelBase.+'
+    in an instance declaration for `PrelBase.Num'
 
  
-tcfail036.hs:9:
-    Class used as a type constructor: Num
-    In the type `Eq Num'
 tcfail036.hs:3:
     Duplicate or overlapping instance declarations
-       for `Num NUM' at tcfail036.hs:8 and tcfail036.hs:7
+       for `PrelBase.Num NUM' at tcfail036.hs:7 and tcfail036.hs:8
+tcfail036.hs:7:
+    No instance for `PrelBase.Show NUM'
+       arising from an instance declaration at tcfail036.hs:7
  
-tcfail036.hs:8:
-    No instance for `Show NUM'
-       arising from an instance declaration at tcfail036.hs:8
+tcfail036.hs:7:
+    No instance for `PrelBase.Eq NUM'
+       arising from an instance declaration at tcfail036.hs:7
  
-tcfail036.hs:8:
-    No instance for `Eq NUM'
-       arising from an instance declaration at tcfail036.hs:8
+tcfail036.hs:9:
+    Class used as a type constructor: Num
+    When checking kinds in `Eq Num'
 
 
 Compilation had errors
+
index 998abd6..d2110c7 100644 (file)
@@ -1,4 +1,4 @@
---!!! PreludeCore entities cannot be redefined at the top-level
+-- !!! PreludeCore entities cannot be redefined at the top-level
 --
 module ShouldFail where
 
index fbf7d46..8421c3b 100644 (file)
@@ -1,8 +1,19 @@
  
 tcfail037.hs:3:
-    Conflicting definitions for `+'
-       Imported from `Prelude' at tcfail037.hs:3
-       Defined at tcfail037.hs:10
+    Ambiguous occurrence `+'
+    It could refer to: +: defined at tcfail037.hs:10
+                      PrelBase.+: imported from Prelude at tcfail037.hs:3
+tcfail037.hs:7:
+    Ambiguous occurrence `+'
+    It could refer to: +: defined at tcfail037.hs:10
+                      PrelBase.+: imported from Prelude at tcfail037.hs:3
+tcfail037.hs:10:
+    Ambiguous occurrence `+'
+    It could refer to: +: defined at tcfail037.hs:10
+                      PrelBase.+: imported from Prelude at tcfail037.hs:3
 
 
 Compilation had errors
+
index 905d9ae..1770bde 100644 (file)
@@ -1,4 +1,4 @@
---!!! duplicate class-method declarations
+-- !!! duplicate class-method declarations
 
 module ShouldFail where
 
index 84e74e1..dc70bbb 100644 (file)
@@ -1,9 +1,10 @@
  
-tcfail038.hs:8:
-    Conflicting definitions for `/=' in the bindings in an instance declaration
 tcfail038.hs:7:
     Conflicting definitions for `==' in the bindings in an instance declaration
+tcfail038.hs:8:
+    Conflicting definitions for `/=' in the bindings in an instance declaration
 
 
 Compilation had errors
+
index 10d501a..7672436 100644 (file)
@@ -1,4 +1,4 @@
---!!! bogus re-use of prelude class-method name (==)
+-- !!! bogus re-use of prelude class-method name (==)
 --
 module ShouldFail where
 
index ad660bb..848dd21 100644 (file)
@@ -1,8 +1,9 @@
  
-tcfail039.hs:3:
-    Conflicting definitions for `=='
-       Imported from `Prelude' at tcfail039.hs:3
-       Defined at tcfail039.hs:7
+tcfail039.hs:7:
+    Ambiguous occurrence `=='
+    It could refer to: ==: defined at tcfail039.hs:7
+                      PrelBase.==: imported from Prelude at tcfail039.hs:3
 
 
 Compilation had errors
+
index 16e5948..8ac06b3 100644 (file)
@@ -1,4 +1,4 @@
---!!! instances of functions
+-- !!! instances of functions
 --
 module ShouldFail where
 
index 03286e6..5fdf6c6 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldFail where
 
---!!! weird class/instance examples off the haskell list
+-- !!! weird class/instance examples off the haskell list
 --
 
 class Foo a          where foo :: a -> a
index 2b62e0b..e5de9ff 100644 (file)
@@ -1,10 +1,12 @@
  
 tcfail042.hs:18:
-    Could not deduce `Num a'
+    Could not deduce `PrelBase.Num a'
        (arising from an instance declaration at tcfail042.hs:18)
-       from the context (Eq a, Show a)
-    Probable cause: missing `Num a' in instance declaration context
+       from the context: (PrelBase.Eq a, PrelBase.Show a)
+    Probable cause: missing `PrelBase.Num a'
+                   in instance declaration context
     When checking the superclasses of an instance declaration
 
 
 Compilation had errors
+
index edf14eb..e93d0b3 100644 (file)
@@ -1,13 +1,54 @@
  
 tcfail043.hs:16:
-    Conflicting definitions for `and'
-       Imported from `Prelude' at tcfail043.hs:16
-       Defined at tcfail043.hs:42
+    Ambiguous occurrence `and'
+    It could refer to: and: defined at tcfail043.hs:42
+                      PrelList.and: imported from Prelude at tcfail043.hs:16
  
 tcfail043.hs:16:
-    Conflicting definitions for `null'
-       Imported from `Prelude' at tcfail043.hs:16
-       Defined at tcfail043.hs:57
+    Ambiguous occurrence `null'
+    It could refer to: null: defined at tcfail043.hs:57
+                      PrelList.null: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:24:
+    Ambiguous occurrence `null'
+    It could refer to: null: defined at tcfail043.hs:57
+                      PrelList.null: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:24:
+    Ambiguous occurrence `null'
+    It could refer to: null: defined at tcfail043.hs:57
+                      PrelList.null: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:26:
+    Ambiguous occurrence `null'
+    It could refer to: null: defined at tcfail043.hs:57
+                      PrelList.null: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:26:
+    Ambiguous occurrence `and'
+    It could refer to: and: defined at tcfail043.hs:42
+                      PrelList.and: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:41:
+    Ambiguous occurrence `and'
+    It could refer to: and: defined at tcfail043.hs:42
+                      PrelList.and: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:42:
+    Ambiguous occurrence `and'
+    It could refer to: and: defined at tcfail043.hs:42
+                      PrelList.and: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:56:
+    Ambiguous occurrence `null'
+    It could refer to: null: defined at tcfail043.hs:57
+                      PrelList.null: imported from Prelude at tcfail043.hs:16
+tcfail043.hs:57:
+    Ambiguous occurrence `null'
+    It could refer to: null: defined at tcfail043.hs:57
+                      PrelList.null: imported from Prelude at tcfail043.hs:16
 
 
 Compilation had errors
+
index 883f0ee..a013dd4 100644 (file)
@@ -1,4 +1,4 @@
---!!! tcfail044: duplicated type variable in instance decls
+-- !!! tcfail044: duplicated type variable in instance decls
 --
 module ShouldFail where
 
index 6651435..5a3633d 100644 (file)
@@ -1,26 +1,23 @@
  
 tcfail044.hs:12: Warning:
-    No explicit method nor default method for `signum'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.signum'
+    in an instance declaration for `PrelBase.Num'
  
 tcfail044.hs:12: Warning:
-    No explicit method nor default method for `abs'
-    in an instance declaration for `Num'
-tcfail044.hs:5: Warning:
-    No explicit method nor default method for `=='
-    in an instance declaration for `Eq'
+    No explicit method nor default method for `PrelBase.abs'
+    in an instance declaration for `PrelBase.Num'
 
  
-tcfail044.hs:12:
-    Illegal instance declaration for `Num (a -> a)'
+tcfail044.hs:5:
+    Illegal instance declaration for `PrelBase.Eq (a -> a)'
        (the instance type must be of form (T a b c)
         where T is not a synonym, and a,b,c are distinct type variables)
  
-tcfail044.hs:5:
-    Illegal instance declaration for `Eq (a -> a)'
+tcfail044.hs:12:
+    Illegal instance declaration for `PrelBase.Num (a -> a)'
        (the instance type must be of form (T a b c)
         where T is not a synonym, and a,b,c are distinct type variables)
 
 
 Compilation had errors
+
index 2bff7e5..7f0699f 100644 (file)
@@ -1,4 +1,4 @@
---!!! a bad _CCallable thing (from a bug from Satnam)
+-- !!! a bad _CCallable thing (from a bug from Satnam)
 --
 module ShouldFail where
 
index 017d224..7f7e5b7 100644 (file)
@@ -1,7 +1,8 @@
  
 tcfail045.hs:10:
     Unacceptable instance type for ccall-ish class
-       class CCallable type Socket
+       class PrelGHC.CCallable type Socket
 
 
 Compilation had errors
+
index 25520d9..6f8185c 100644 (file)
@@ -1,4 +1,4 @@
---!! function types in deriving Eq things
+-- !! function types in deriving Eq things
 -- From a bug report by Dave Harrison <D.A.Harrison@newcastle.ac.uk>
 
 module ShouldFail where
index 35a4086..27fbf4a 100644 (file)
@@ -1,7 +1,8 @@
  
 tcfail046.hs:4:
-    No instance for `Eq (Process a)'
+    No instance for `PrelBase.Eq (Process a)'
     When deriving classes for `Message'
 
 
 Compilation had errors
+
index fd7bc0b..d138182 100644 (file)
@@ -3,3 +3,4 @@ tcfail048.hs:4: Type constructor or class not in scope: `B'
 
 
 Compilation had errors
+
index e468e08..164fe3c 100644 (file)
@@ -3,3 +3,4 @@ tcfail050.hs:3: Data constructor not in scope: `B'
 
 
 Compilation had errors
+
index 8f15089..fb4b635 100644 (file)
@@ -3,3 +3,4 @@ tcfail052.hs:4: Type variable not in scope: `c'
 
 
 Compilation had errors
+
index 6c9d899..39661e6 100644 (file)
@@ -3,3 +3,4 @@ tcfail053.hs:3: Type constructor or class not in scope: `A'
 
 
 Compilation had errors
+
index a2dc363..5a22c7f 100644 (file)
@@ -3,3 +3,4 @@ tcfail054.hs:3: Data constructor not in scope: `B'
 
 
 Compilation had errors
+
index 8a2f7ba..1bc765d 100644 (file)
@@ -1,14 +1,10 @@
  
-tcfail056.hs:10: Warning:
-    No explicit method nor default method for `=='
-    in an instance declaration for `Eq'
-
 tcfail056.hs:1:
     Duplicate or overlapping instance declarations
-       for `Eq Foo' at tcfail056.hs:10 and tcfail056.hs:6
+       for `PrelBase.Eq Foo' at tcfail056.hs:6 and tcfail056.hs:10
  
-tcfail056.hs:10: Class `Eq' does not have a method `<='
+tcfail056.hs:10: Class `PrelBase.Eq' does not have a method `<='
 
 
 Compilation had errors
+
index bef0085..9659cf0 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldFail where
 
---!!! inadvertently using -> instead of =>
+-- !!! inadvertently using -> instead of =>
 
 f :: (RealFrac a) -> a -> a
 f x = x
index c697dd1..87aff59 100644 (file)
@@ -1,7 +1,8 @@
  
 tcfail057.hs:5:
     Class used as a type constructor: RealFrac
-    In the type `forall a. RealFrac a -> a -> a'
+    When checking kinds in `RealFrac a'
 
 
 Compilation had errors
+
index c05c859..d8315b8 100644 (file)
@@ -1,7 +1,7 @@
 module ShouldFail where
 import Array
 
---!!! inadvertently using => instead of ->
+-- !!! inadvertently using => instead of ->
 
 f :: (Array a) => a -> b
 f x = x
index 8a9b740..544e506 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail058.hs:6:
-    Type constructor used as a class: PrelArr.Array
-    In the context `(PrelArr.Array a) =>'
-    In the type `forall a b. (PrelArr.Array a) => a -> b'
+    Type constructor used as a class: Array
+    When checking kinds in `Array a'
 
 
 Compilation had errors
+
index 2957e80..35e502c 100644 (file)
@@ -1,4 +1,4 @@
---!! signature bugs exposed by Sigbjorne Finne
+-- !! signature bugs exposed by Sigbjorn Finne
 --
 module ShouldFail where
 
index bf03794..6375a06 100644 (file)
@@ -1,11 +1,12 @@
  
-tcfail061.hs:11: Type variable not in scope: `b'
-tcfail061.hs:11: Type variable not in scope: `b'
 tcfail061.hs:5: Type variable not in scope: `b'
  
 tcfail061.hs:5: Type variable not in scope: `b'
+tcfail061.hs:11: Type variable not in scope: `b'
+tcfail061.hs:11: Type variable not in scope: `b'
 
 
 Compilation had errors
+
index b7391d6..f37dc1e 100644 (file)
@@ -1,4 +1,4 @@
---!!! bug report from Satnam
+-- !!! bug report from Satnam
 --
 module ShouldFail
 where
@@ -32,6 +32,6 @@ data BehaviouralExpression
 
 type BehaviouralRelation
   = (behaviouralExpression, behaviouralExpression)
------^ typo ----------------^ typo (but so what?)
+---- ^ typo ----------------^ typo (but so what?)
 
 type BehaviouralRelationList = [BehaviouralRelation]
index 562cdf4..3be3644 100644 (file)
@@ -1,5 +1,5 @@
---!!! no type variable on a context
---!!! reported by Sigbjorn Finne
+-- !!! no type variable on a context
+-- !!! reported by Sigbjorn Finne
 
 moby :: Num => Int -> a -> Int
 moby x y = x+y
index 580ebf6..a19293a 100644 (file)
@@ -1,11 +1,13 @@
  
 tcfail065.hs:29:
     Inferred type is less polymorphic than expected
-       Quantified type variable `x' escapes; i.e. unifies with something more global
-    When checking the type signature for `setX'
-       Signature: x -> X x1 -> X x1
-       Inferred:  x -> X x -> X x
+       Quantified type variable `x' escapes
+       It is mentioned in the environment
+       The following variables in the environment mention `x'
+    When checking the type signature
+       setX :: forall _1201. _1201 -> X _120 -> X _120
     In the definition for method `setX'
 
 
 Compilation had errors
+
index ccaac4a..b243791 100644 (file)
@@ -1,34 +1,38 @@
  
 tcfail067.hs:65: Warning:
-    No explicit method nor default method for `signum'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.signum'
+    in an instance declaration for `PrelBase.Num'
  
 tcfail067.hs:65: Warning:
-    No explicit method nor default method for `abs'
-    in an instance declaration for `Num'
+    No explicit method nor default method for `PrelBase.abs'
+    in an instance declaration for `PrelBase.Num'
 
  
-tcfail067.hs:76:
-    Could not deduce `Ord a'
-       (arising from use of `SubRange' at tcfail067.hs:76)
-       from the context (Num a, numSubRangeBinOp at [a])
-    Probable cause: missing `Ord a' in type signature for `numSubRangeBinOp'
-    When checking the type signature(s) for `numSubRangeBinOp'
 tcfail067.hs:65:
-    Could not deduce `Ord a'
+    Could not deduce `PrelBase.Ord a'
        (arising from use of `SubRange' at tcfail067.hs:65)
-       from the context (Num (SubRange a), Num a, Eq (SubRange a), Show (SubRange a), Eq (SubRange a), Show (SubRange a), fromInt at [SubRange a], fromInteger at [SubRange a], signum at [SubRange a], abs at [SubRange a], negate at [SubRange a], * at [SubRange a], - at [SubRange a], + at [SubRange a])
-    Probable cause: missing `Ord a' in instance declaration context
+       from the context: (PrelBase.Num (SubRange _97), PrelBase.Num _97, PrelBase.Eq (SubRange _97), PrelBase.Show (SubRange _97), PrelBase.Eq (SubRange _97), PrelBase.Show (SubRange _97))
+    Probable cause: missing `PrelBase.Ord a'
+                   in instance declaration context
     When checking the methods of an instance declaration
  
 tcfail067.hs:65:
-    Could not deduce `Show (SubRange a)'
+    Could not deduce `PrelBase.Show (SubRange a)'
        (arising from an instance declaration at tcfail067.hs:65)
-       from the context (Num a)
-    Probable cause: missing `Show (SubRange a)' in instance declaration context
-                   or missing instance declaration for `Show (SubRange a)'
+       from the context: (PrelBase.Num _97)
+    Probable cause: missing `PrelBase.Show (SubRange a)'
+                   in instance declaration context
+                   or missing instance declaration for `PrelBase.Show (SubRange a)'
     When checking the superclasses of an instance declaration
+tcfail067.hs:74:
+    Could not deduce `PrelBase.Ord a'
+       (arising from use of `SubRange' at tcfail067.hs:74)
+       from the context: (PrelBase.Num a)
+    Probable cause: missing `PrelBase.Ord a'
+                   in type signature for `numSubRangeBinOp'
+    When checking the type signature(s) for `numSubRangeBinOp'
 
 
 Compilation had errors
+
index 75e0125..dc5fc23 100644 (file)
@@ -1,5 +1,5 @@
---!! Make sure that state threads don't escape
---!! (example from Neil Ashton at York)
+-- !! Make sure that state threads don't escape
+-- !! (example from Neil Ashton at York)
 --
 module ShouldFail where
 
index beba5e1..ebd2b1a 100644 (file)
@@ -1,30 +1,25 @@
  
-tcfail068.hs:45:
+tcfail068.hs:12:
     Inferred type is less polymorphic than expected
-       Quantified type variable `$a' escapes; i.e. unifies with something more global
-    When checking the type signature for an expression
-       Signature: ST $b $a1
-       Inferred:  ST $a (c, IndTree $a b)
-    In the first argument of `runST', namely `(itrapstate' i k s)'
-    In the right-hand side of an equation for `itrapstate':
-       runST (itrapstate' i k s)
-tcfail068.hs:32:
-    Inferred type is less polymorphic than expected
-       Quantified type variable `$a' escapes; i.e. unifies with something more global
-    When checking the type signature for an expression
-       Signature: ST $b $a1
-       Inferred:  ST $a (IndTree $a a)
-    In the first argument of `runST', namely `(itrap' i k)'
-    In the right-hand side of an equation for `itrap':
-       runST (itrap' i k)
+       Quantified type variable `s' escapes
+       It unifies with `_115', which is mentioned in the environment
+       The following variables in the environment mention `_115'
+    In an expression with expected type: forall
+                                        _1151.
+                                        PrelST.ST _1151 a
+    In the first argument of `runST', namely `(newArray ((1, 1), n) x)'
+    In the right-hand side of an equation for `itgen':
+       runST (newArray ((1, 1), n) x)
  
-tcfail068.hs:21:
+tcfail068.hs:17:
     Inferred type is less polymorphic than expected
-       Quantified type variable `$a' escapes; i.e. unifies with something more global
-    When checking the type signature for an expression
-       Signature: ST $b $a1
-       Inferred:  ST $a (IndTree $a a)
+       Quantified type variable `s' escapes
+       It unifies with `_115', which is mentioned in the environment
+       The following variables in the environment mention `_115'
+           arr :: IndTree _115 a
+    In an expression with expected type: forall
+                                        _1151.
+                                        PrelST.ST _1151 _97
     In the first argument of `runST', namely
        `((readArray arr i)
          >>= (\ val -> (writeArray arr i (f val)) >> (return arr)))'
@@ -32,15 +27,42 @@ tcfail068.hs:21:
        runST ((readArray arr i)
               >>= (\ val -> (writeArray arr i (f val)) >> (return arr)))
  
-tcfail068.hs:14:
+tcfail068.hs:24:
     Inferred type is less polymorphic than expected
-       Quantified type variable `$c' escapes; i.e. unifies with something more global
-    When checking the type signature for an expression
-       Signature: ST $b $a
-       Inferred:  ST $c (IndTree $c $b1)
-    In the first argument of `runST', namely `(newArray ((1, 1), n) x)'
-    In the right-hand side of an equation for `itgen':
-       runST (newArray ((1, 1), n) x)
+       Quantified type variable `s' escapes
+       It unifies with `_115', which is mentioned in the environment
+       The following variables in the environment mention `_115'
+           arr :: IndTree _115 a
+           itrap' :: Int -> Int -> PrelST.ST _115 (IndTree _115 a)
+           itrapsnd :: Int -> Int -> PrelST.ST _115 (IndTree _115 a)
+    In an expression with expected type: forall
+                                        _1151.
+                                        PrelST.ST _1151 _97
+    In the first argument of `runST', namely `(itrap' i k)'
+    In the right-hand side of an equation for `itrap':
+       runST (itrap' i k)
+tcfail068.hs:36:
+    Inferred type is less polymorphic than expected
+       Quantified type variable `s' escapes
+       It unifies with `_115', which is mentioned in the environment
+       The following variables in the environment mention `_115'
+           arr :: IndTree _115 b
+           itrapstate' :: Int
+                          -> Int
+                          -> c
+                          -> PrelST.ST _115 (c, IndTree _115 b)
+           itrapstatesnd :: Int
+                            -> Int
+                            -> c
+                            -> PrelST.ST _115 (c, IndTree _115 b)
+    In an expression with expected type: forall
+                                        _1151.
+                                        PrelST.ST _1151 a
+    In the first argument of `runST', namely `(itrapstate' i k s)'
+    In the right-hand side of an equation for `itrapstate':
+       runST (itrapstate' i k s)
 
 
 Compilation had errors
+
index e8cb82b..ed4c383 100644 (file)
@@ -1,10 +1,11 @@
  
 tcfail069.hs:20:
-    Couldn't match `[$0]' against `($1, $2)'
-       Expected type: [$0]
-       Inferred type: ($1, $2)
+    Couldn't match `[t]' against `(_116, _1161)'
+       Expected type: [t]
+       Inferred type: (_116, _1161)
     In the scrutinee of a case expression: (list1, list2)
     In the case expression: case (list1, list2) of [] -> error "foo"
 
 
 Compilation had errors
+
index 553969d..e38c186 100644 (file)
@@ -1,10 +1,11 @@
  
 tcfail070.hs:13:
-    Couldn't match `*' against `* -> $0'
+    Couldn't match `*' against `* -> k'
        Expected kind: *
-       Inferred kind: * -> $0
-    In the type `[Int] Bool'
-    In the type declaration for `State'
+       Inferred kind: * -> k
+    When checking kinds in `[Int] Bool'
+    In the type synonym declaration for `State'
 
 
 Compilation had errors
+
index 9aa6f07..cadf1b5 100644 (file)
@@ -1,4 +1,4 @@
---!!! Mis-matched contexts in a mutually recursive group
+-- !!! Mis-matched contexts in a mutually recursive group
 
 module ShouldFail where
 
index ef059b3..ac174a7 100644 (file)
@@ -1,10 +1,9 @@
  
 tcfail071.hs:8:
     Inferred type is less polymorphic than expected
-       Quantified type variable `c' is unified with `$a -> [$0] -> [$0]'
-    When checking the type signature for `g'
-       Signature: c -> c
-       Inferred:  ($a -> [$0] -> [$0]) -> $a -> [$0] -> [$0]
+       Quantified type variable `c' is unified with `a -> [t] -> [t]'
+    When checking the type signature g :: forall _99. _99 -> _99
 
 
 Compilation had errors
+
index 53d3071..d64a33f 100644 (file)
@@ -1,13 +1,14 @@
  
 tcfail072.hs:23:
     Ambiguous type variable(s) `p'
-       in the constraint `Ord p'
+       in the constraint `PrelBase.Ord p'
        arising from use of `g' at tcfail072.hs:23
  
 tcfail072.hs:23:
     Ambiguous type variable(s) `q'
-       in the constraint `Ord q'
+       in the constraint `PrelBase.Ord q'
        arising from use of `g' at tcfail072.hs:23
 
 
 Compilation had errors
+
index b02320d..52038da 100644 (file)
@@ -1,14 +1,16 @@
  
 tcfail073.hs:3:
     Duplicate or overlapping instance declarations
-       for `Eq ($a, $b)' at PrelTup.hi:14 and tcfail073.hs:8
+       for `PrelBase.Eq (a, b)' at PrelTup.hi:14 and tcfail073.hs:8
  
 tcfail073.hs:8:
-    Could not deduce `Eq a'
-       (arising from use of `==' at tcfail073.hs:8)
-       from the context (Eq (a, b), /= at [(a, b)], == at [(a, b)])
-    Probable cause: missing `Eq a' in instance declaration context
+    Could not deduce `PrelBase.Eq a'
+       (arising from use of `PrelBase.==' at tcfail073.hs:8)
+       from the context: (PrelBase.Eq (a, b))
+    Probable cause: missing `PrelBase.Eq a'
+                   in instance declaration context
     When checking the methods of an instance declaration
 
 
 Compilation had errors
+
index 83bb80a..9456d4e 100644 (file)
@@ -1,8 +1,9 @@
  
 tcfail074.hs:7:
-    Conflicting definitions for `main'
-       Defined at tcfail074.hs:8
-       Defined at tcfail074.hs:7
+    Multiple declarations of `main'
+       defined at tcfail074.hs:7
+       defined at tcfail074.hs:8
 
 
 Compilation had errors
+
index 202c6aa..dc89810 100644 (file)
@@ -1,4 +1,4 @@
---!! Test top-level unboxed types
+-- !! Test top-level unboxed types
 
 {-# OPTIONS -fglasgow-exts #-}
 
index fa09963..ae09933 100644 (file)
@@ -1,13 +1,17 @@
  
 tcfail076.hs:18:
     Inferred type is less polymorphic than expected
-       Quantified type variable `res' escapes; i.e. unifies with something more global
-    When checking the type signature for an expression
-       Signature: (a -> m res1) -> m res1
-       Inferred:  (a -> m res) -> m res
+       Quantified type variable `res' escapes
+       It unifies with `_114_101_115', which is mentioned in the environment
+       The following variables in the environment mention `_114_101_115'
+           cont :: a -> m _114_101_115
+    In an expression with expected type: forall
+                                        _114_101_1151.
+                                        (_97 -> m _114_101_1151) -> m _114_101_1151
     In the first argument of `KContT', namely `(\ cont' -> cont a)'
     In the right-hand side of a lambda abstraction:
        KContT (\ cont' -> cont a)
 
 
 Compilation had errors
+
index 6070a5b..54735b9 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldFail where
 
---!!! declaring a default method in a class that doesn't have that method.
+-- !!! declaring a default method in a class that doesn't have that method.
 
 class Foo a where
   op :: a -> a
index 23e93b5..1054f6d 100644 (file)
@@ -1,6 +1,6 @@
 module ShouldFail where
 
---!!! Using a type constructor as a class name
+-- !!! Using a type constructor as a class name
 
 f :: Integer i => i 
 f =               0    
index ed2c64a..cb15a3a 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail078.hs:5:
     Type constructor used as a class: Integer
-    In the context `(Integer i) =>'
-    In the type `forall i. (Integer i) => i'
+    When checking kinds in `Integer i'
 
 
 Compilation had errors
+
index 273ddfc..33aeaa3 100644 (file)
@@ -2,7 +2,7 @@
 
 module ShouldFail where
 
---!!! unboxed field in newtype declaration
+-- !!! unboxed field in newtype declaration
 
 import GlaExts ( Int# )
 
index c25c1ba..963dafb 100644 (file)
@@ -1,7 +1,11 @@
  
 tcfail079.hs:9:
-    Newtype constructor field has an unboxed type: `Int#'
-    In the newtype declaration for `Unboxed'
+    Couldn't match `*' against `#'
+       Expected kind: *
+       Inferred kind: #
+    When checking that `Int#' is a type
+    In the data type declaration for `Unboxed'
 
 
 Compilation had errors
+
index f64fe1c..4813068 100644 (file)
@@ -1,4 +1,4 @@
---!!! Multi-param type classes test: ambiguity bug
+-- !!! Multi-param type classes test: ambiguity bug
 module ShouldFail where
 
 class Collection c a where
index 00b4945..209ca3f 100644 (file)
@@ -1,4 +1,4 @@
---!! Test for (->) instances
+-- !! Test for (->) instances
 
 module Main where
 
index 3e27872..348ca22 100644 (file)
@@ -1,4 +1,4 @@
---!!! space leak from overloading !!!
+-- !!! space leak from overloading !!!
 module Main where
 
 -- This program develops a space leak if sfoldl isn't compiled with some