[project @ 1998-11-16 18:14:44 by simonm]
authorsimonm <unknown>
Mon, 16 Nov 1998 18:15:57 +0000 (18:15 +0000)
committersimonm <unknown>
Mon, 16 Nov 1998 18:15:57 +0000 (18:15 +0000)
update tests for 4.00

146 files changed:
ghc/tests/array/should_run/arr003.stderr
ghc/tests/array/should_run/arr004.stderr
ghc/tests/array/should_run/arr007.stderr
ghc/tests/array/should_run/arr008.stderr
ghc/tests/ccall/should_fail/cc001.stderr
ghc/tests/ccall/should_fail/cc002.stderr
ghc/tests/ccall/should_fail/cc004.stderr
ghc/tests/codeGen/should_run/cg016.stderr
ghc/tests/codeGen/should_run/cg025.hs
ghc/tests/codeGen/should_run/cg025.stderr
ghc/tests/codeGen/should_run/cg026.stdout
ghc/tests/deSugar/should_compile/ds003.stderr
ghc/tests/deSugar/should_compile/ds020.stderr
ghc/tests/deSugar/should_compile/ds034.stderr
ghc/tests/deSugar/should_run/dsrun001.stdout
ghc/tests/deSugar/should_run/dsrun005.stderr
ghc/tests/deriving/should_compile/drv006.stderr
ghc/tests/deriving/should_compile/drv007.stderr
ghc/tests/rename/should_compile/Int10.hi
ghc/tests/rename/should_compile/Rn016.hi
ghc/tests/rename/should_compile/Rn017.hi
ghc/tests/rename/should_compile/rn017.stderr
ghc/tests/rename/should_fail/rnfail014.stderr
ghc/tests/stranal/should_compile/str001.stderr
ghc/tests/typecheck/should_compile/Makefile
ghc/tests/typecheck/should_compile/TheUtils.hi
ghc/tests/typecheck/should_compile/tc001.stderr
ghc/tests/typecheck/should_compile/tc005.stderr
ghc/tests/typecheck/should_compile/tc008.stderr
ghc/tests/typecheck/should_compile/tc009.stderr
ghc/tests/typecheck/should_compile/tc011.stderr
ghc/tests/typecheck/should_compile/tc012.stderr
ghc/tests/typecheck/should_compile/tc015.stderr
ghc/tests/typecheck/should_compile/tc016.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/tc026.stderr
ghc/tests/typecheck/should_compile/tc027.stderr
ghc/tests/typecheck/should_compile/tc029.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.stderr
ghc/tests/typecheck/should_compile/tc041.stderr
ghc/tests/typecheck/should_compile/tc042.stderr
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.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/tc066.stderr
ghc/tests/typecheck/should_compile/tc067.stderr
ghc/tests/typecheck/should_compile/tc068.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/tc077.stderr
ghc/tests/typecheck/should_compile/tc078.stderr
ghc/tests/typecheck/should_compile/tc079.stderr
ghc/tests/typecheck/should_compile/tc080.stderr
ghc/tests/typecheck/should_compile/tc081.stderr
ghc/tests/typecheck/should_compile/tc082.stderr
ghc/tests/typecheck/should_compile/tc084.stderr
ghc/tests/typecheck/should_compile/tc085.stderr
ghc/tests/typecheck/should_compile/tc086.stderr
ghc/tests/typecheck/should_compile/tc087.hs
ghc/tests/typecheck/should_compile/tc087.stderr
ghc/tests/typecheck/should_compile/tc088.stderr
ghc/tests/typecheck/should_compile/tc089.stderr
ghc/tests/typecheck/should_compile/tc090.stderr
ghc/tests/typecheck/should_compile/tc091.stderr
ghc/tests/typecheck/should_compile/tc092.stderr
ghc/tests/typecheck/should_compile/tc093.stderr
ghc/tests/typecheck/should_compile/tc095.stderr
ghc/tests/typecheck/should_fail/Digraph.stderr
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/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/tcfail018.stderr
ghc/tests/typecheck/should_fail/tcfail021.stderr
ghc/tests/typecheck/should_fail/tcfail023.stderr
ghc/tests/typecheck/should_fail/tcfail027.stderr
ghc/tests/typecheck/should_fail/tcfail028.stderr
ghc/tests/typecheck/should_fail/tcfail029.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/tcfail036.stderr
ghc/tests/typecheck/should_fail/tcfail040.stderr
ghc/tests/typecheck/should_fail/tcfail044.stderr
ghc/tests/typecheck/should_fail/tcfail045.stderr
ghc/tests/typecheck/should_fail/tcfail055.stderr
ghc/tests/typecheck/should_fail/tcfail057.stderr
ghc/tests/typecheck/should_fail/tcfail058.stderr
ghc/tests/typecheck/should_fail/tcfail065.stderr
ghc/tests/typecheck/should_fail/tcfail067.stderr
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.stderr
ghc/tests/typecheck/should_fail/tcfail072.stderr
ghc/tests/typecheck/should_fail/tcfail073.stderr
ghc/tests/typecheck/should_fail/tcfail076.hs
ghc/tests/typecheck/should_fail/tcfail076.stderr
ghc/tests/typecheck/should_fail/tcfail078.stderr
ghc/tests/typecheck/should_fail/tcfail080.stderr
ghc/tests/typecheck/should_run/tcrun002.hs

index a3f331b..8573ab8 100644 (file)
@@ -1,2 +1,2 @@
 
-Fail: Ix{Int}.index: Index (4) out of range ((1,3))
\ No newline at end of file
+Fail: Ix{Int}.index: Index (4) out of range ((1,3))
index b39ffa0..a2cdf23 100644 (file)
@@ -1,2 +1,2 @@
 
-Fail: (Array.!): undefined array element
\ No newline at end of file
+Fail: (Array.!): undefined array element
index 2cf8859..1850563 100644 (file)
@@ -1,2 +1,2 @@
 
-Fail: Ix{Int}.index: Index (1) out of range ((1,0))
\ No newline at end of file
+Fail: Ix{Int}.index: Index (1) out of range ((1,0))
index 8da40d2..42ab1ca 100644 (file)
@@ -1,2 +1,2 @@
 
-Fail: Ix{Int}.index: Index (2) out of range ((0,1))
\ No newline at end of file
+Fail: Ix{Int}.index: Index (2) out of range ((0,1))
index b31426c..dfeb20a 100644 (file)
@@ -1,8 +1,7 @@
  
 cc001.hs:5:
-    Ambiguous type variable(s)
-    `aQf'
-       in the constraint `PrelGHC.CCallable aQf'
+    Ambiguous type variable(s) `$0'
+       in the constraint `PrelGHC.CCallable $0'
        arising from an argument in the _ccall_ to `foo', namely `(undefined ())' at cc001.hs:5
 
 
index de8014b..4157c7e 100644 (file)
@@ -1,15 +1,7 @@
  
-PrelForeign.hi:19:
-    Constructors for `ForeignObj' not visible when checking `PrelGHC.CCallable' instance
-       (Try either importing ForeignObj non-abstractly or compile using -fno-prune-tydecls ..)
-cc002.hs:18:
-    No instance for `PrelGHC.CCallable ForeignObj'
-       (arising from an argument in the _ccall_ to `c', namely `x' at cc002.hs:18)
 cc002.hs:10:
     No instance for `PrelGHC.CReturnable ForeignObj'
-       (arising from the result of the _ccall_ to `a' at cc002.hs:10)
+       arising from the result of the _ccall_ to `a' at cc002.hs:10
 
 
 Compilation had errors
index d9a4ae7..3173740 100644 (file)
@@ -1,11 +1,11 @@
  
 cc004.hs:2:
     Cannot generalise these overloadings (in a _ccall_):
-       `PrelGHC.CReturnable aSE' arising from the result of the _ccall_ to `f' at cc004.hs:18
+       `PrelGHC.CReturnable $ren' arising from the result of the _ccall_ to `f' at cc004.hs:18
  
 cc004.hs:2:
     Cannot generalise these overloadings (in a _ccall_):
-       `PrelGHC.CReturnable aTM' arising from the result of the _ccall_ to `f' at cc004.hs:11
+       `PrelGHC.CReturnable a' arising from the result of the _ccall_ to `f' at cc004.hs:11
 
 
 Compilation had errors
index 8a4e211..2d16aa5 100644 (file)
@@ -1,12 +1,2 @@
 
-Fail: 1st call to error
-
-Fail: 2nd call to error
-
-Fail: 3rd call to error
-
-Fail: 4th call to error
-
-Fail: 5th call to error
-
-Fail: 6th call to error
\ No newline at end of file
+Fail: 6th call to error
index 618e3b1..97b7b21 100644 (file)
@@ -17,4 +17,4 @@ main = do
     file_cts <- readFile (head args)
     hPutStr  stderr file_cts
     trace "hello, trace" $
-      catch (getEnv "__WURBLE__" >> return ()) (\ e -> error "hello, error\n")
+      catch (getEnv "__WURBLE__" >> return ()) (\ e -> error "hello, error")
index 063a689..69312f2 100644 (file)
@@ -20,6 +20,7 @@ main = do
     file_cts <- readFile (head args)
     hPutStr  stderr file_cts
     trace "hello, trace" $
-      catch (getEnv "__WURBLE__" >> return ()) (\ e -> error "hello, error\n")
+      catch (getEnv "__WURBLE__" >> return ()) (\ e -> error "hello, error")
 hello, trace
+
 Fail: hello, error
index 87dcba4..11104a9 100644 (file)
@@ -1,5 +1,3 @@
-93 
-...ot emoc ot nem doog lla rof emit eht si woN
 
 [1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384,16641,16900,17161,17424,17689,17956,18225,18496,18769,19044,19321,19600,19881,20164,20449,20736,21025,21316,21609,21904,22201,22500,22801,23104,23409,23716,24025,24336,24649,24964,25281,25600,25921,26244,26569,26896,27225,27556,27889,28224,28561,28900,29241,29584,29929,30276,30625,30976,31329,31684,32041,32400,32761,33124,33489,33856,34225,34596,34969,35344,35721,36100,36481,36864,37249,37636,38025,38416,38809,39204,39601,40000,40401,40804,41209,41616,42025,42436,42849,43264,43681,44100,44521,44944,45369,45796,46225,46656,47089,47524,47961,48400,48841,49284,49729,50176,50625,51076,51529,51984,52441,52900,53361,53824,54289,54756,55225,55696,56169,56644,57121,57600,58081,58564,59049,59536,60025,60516,61009,61504,62001,62500,63001,63504,64009,64516,65025,65536,66049,66564,67081,67600,68121,68644,69169,69696,70225,70756,71289,71824,72361,72900,73441,73984,74529,75076,75625,76176,76729,77284,77841,78400,78961,79524,80089,80656,81225,81796,82369,82944,83521,84100,84681,85264,85849,86436,87025,87616,88209,88804,89401,90000,90601,91204,91809,92416,93025,93636,94249,94864,95481,96100,96721,97344,97969,98596,99225,99856,100489,101124,101761,102400,103041,103684,104329,104976,105625,106276,106929,107584,108241,108900,109561,110224,110889,111556,112225,112896,113569,114244,114921,115600,116281,116964,117649,118336,119025,119716,120409,121104,121801,122500,123201,123904,124609,125316,126025,126736,127449,128164,128881,129600,130321,131044,131769,132496,133225,133956,134689,135424,136161,136900,137641,138384,139129,139876,140625,141376,142129,142884,143641,144400,145161,145924,146689,147456,148225,148996,149769,150544,151321,152100,152881,153664,154449,155236,156025,156816,157609,158404,159201,160000,160801,161604,162409,163216,164025,164836,165649,166464,167281,168100,168921,169744,170569,171396,172225,173056]
 
@@ -11,3 +9,5 @@
 
 [1764 % 1,1849 % 1,1936 % 1,2025 % 1,2116 % 1,2209 % 1,2304 % 1,2401 % 1,2500 % 1,2601 % 1,2704 % 1,2809 % 1,2916 % 1,3025 % 1,3136 % 1,3249 % 1,3364 % 1,3481 % 1,3600 % 1,3721 % 1,3844 % 1,3969 % 1,4096 % 1,4225 % 1,4356 % 1,4489 % 1,4624 % 1,4761 % 1,4900 % 1,5041 % 1,5184 % 1,5329 % 1,5476 % 1,5625 % 1,5776 % 1,5929 % 1,6084 % 1,6241 % 1,6400 % 1,6561 % 1,6724 % 1,6889 % 1,7056 % 1,7225 % 1,7396 % 1,7569 % 1,7744 % 1,7921 % 1,8100 % 1,8281 % 1,8464 % 1,8649 % 1,8836 % 1,9025 % 1,9216 % 1,9409 % 1,9604 % 1,9801 % 1,10000 % 1,10201 % 1,10404 % 1,10609 % 1,10816 % 1,11025 % 1,11236 % 1,11449 % 1,11664 % 1,11881 % 1,12100 % 1,12321 % 1,12544 % 1,12769 % 1,12996 % 1,13225 % 1,13456 % 1,13689 % 1,13924 % 1,14161 % 1,14400 % 1,14641 % 1,14884 % 1,15129 % 1,15376 % 1,15625 % 1,15876 % 1,16129 % 1,16384 % 1,16641 % 1,16900 % 1,17161 % 1,17424 % 1,17689 % 1,17956 % 1,18225 % 1,18496 % 1,18769 % 1,19044 % 1,19321 % 1,19600 % 1,19881 % 1,20164 % 1,20449 % 1,20736 % 1,21025 % 1,21316 % 1,21609 % 1,21904 % 1,22201 % 1,22500 % 1,22801 % 1,23104 % 1,23409 % 1,23716 % 1,24025 % 1,24336 % 1,24649 % 1,24964 % 1,25281 % 1,25600 % 1,25921 % 1,26244 % 1,26569 % 1,26896 % 1,27225 % 1,27556 % 1,27889 % 1,28224 % 1,28561 % 1,28900 % 1,29241 % 1,29584 % 1,29929 % 1,30276 % 1,30625 % 1,30976 % 1,31329 % 1,31684 % 1,32041 % 1,32400 % 1,32761 % 1,33124 % 1,33489 % 1,33856 % 1,34225 % 1,34596 % 1,34969 % 1,35344 % 1,35721 % 1,36100 % 1,36481 % 1,36864 % 1,37249 % 1,37636 % 1,38025 % 1,38416 % 1,38809 % 1,39204 % 1,39601 % 1,40000 % 1,40401 % 1,40804 % 1,41209 % 1,41616 % 1,42025 % 1,42436 % 1,42849 % 1,43264 % 1,43681 % 1,44100 % 1,44521 % 1,44944 % 1,45369 % 1,45796 % 1,46225 % 1,46656 % 1,47089 % 1,47524 % 1,47961 % 1,48400 % 1,48841 % 1,49284 % 1,49729 % 1,50176 % 1,50625 % 1,51076 % 1,51529 % 1,51984 % 1,52441 % 1,52900 % 1,53361 % 1,53824 % 1,54289 % 1,54756 % 1,55225 % 1,55696 % 1,56169 % 1,56644 % 1,57121 % 1,57600 % 1,58081 % 1,58564 % 1,59049 % 1,59536 % 1,60025 % 1,60516 % 1,61009 % 1,61504 % 1,62001 % 1,62500 % 1,63001 % 1,63504 % 1,64009 % 1,64516 % 1,65025 % 1,65536 % 1,66049 % 1,66564 % 1,67081 % 1,67600 % 1,68121 % 1,68644 % 1,69169 % 1,69696 % 1,70225 % 1,70756 % 1,71289 % 1,71824 % 1,72361 % 1,72900 % 1,73441 % 1,73984 % 1,74529 % 1,75076 % 1,75625 % 1,76176 % 1,76729 % 1,77284 % 1,77841 % 1,78400 % 1,78961 % 1,79524 % 1,80089 % 1,80656 % 1,81225 % 1,81796 % 1,82369 % 1,82944 % 1,83521 % 1,84100 % 1,84681 % 1,85264 % 1,85849 % 1,86436 % 1,87025 % 1,87616 % 1,88209 % 1,88804 % 1,89401 % 1,90000 % 1,90601 % 1,91204 % 1,91809 % 1,92416 % 1,93025 % 1,93636 % 1,94249 % 1,94864 % 1,95481 % 1,96100 % 1,96721 % 1,97344 % 1,97969 % 1,98596 % 1,99225 % 1,99856 % 1,100489 % 1,101124 % 1,101761 % 1,102400 % 1,103041 % 1,103684 % 1,104329 % 1,104976 % 1,105625 % 1,106276 % 1,106929 % 1,107584 % 1,108241 % 1,108900 % 1,109561 % 1,110224 % 1,110889 % 1,111556 % 1,112225 % 1,112896 % 1,113569 % 1,114244 % 1,114921 % 1,115600 % 1,116281 % 1,116964 % 1,117649 % 1,118336 % 1,119025 % 1,119716 % 1,120409 % 1,121104 % 1,121801 % 1,122500 % 1,123201 % 1,123904 % 1,124609 % 1,125316 % 1,126025 % 1,126736 % 1,127449 % 1,128164 % 1,128881 % 1,129600 % 1,130321 % 1,131044 % 1,131769 % 1,132496 % 1,133225 % 1,133956 % 1,134689 % 1,135424 % 1,136161 % 1,136900 % 1,137641 % 1,138384 % 1,139129 % 1,139876 % 1,140625 % 1,141376 % 1,142129 % 1,142884 % 1,143641 % 1,144400 % 1,145161 % 1,145924 % 1,146689 % 1,147456 % 1,148225 % 1,148996 % 1,149769 % 1,150544 % 1,151321 % 1,152100 % 1,152881 % 1,153664 % 1,154449 % 1,155236 % 1,156025 % 1,156816 % 1,157609 % 1,158404 % 1,159201 % 1,160000 % 1,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5]
 
+93 
+...ot emoc ot nem doog lla rof emit eht si woN
index 1ad4746..3b040b6 100644 (file)
@@ -1,5 +1,5 @@
 ds003.hs:5: 
     Pattern match(es) are overlapped in the definition of function `f'
-           (x : (x1 : (x2 : x3))) ~(y, ys) z = ...
+           (: x (: x1 (: x2 x3))) ~(y, ys) z = ...
            x y True = ...
 
index e4ee602..e1d1bae 100644 (file)
@@ -3,7 +3,7 @@ ds020.hs:5:
            ~(~[], ~[], ~[]) = ...
 ds020.hs:8: 
     Pattern match(es) are overlapped in the definition of function `b'
-           ~(~x : (~xs : ~ys)) = ...
+           ~(: ~x (: ~xs ~ys)) = ...
 ds020.hs:13: 
     Pattern match(es) are overlapped in the definition of function `d'
            ~(n+43) = ...
@@ -12,5 +12,3 @@ ds020.hs:19:
     Pattern match(es) are overlapped in the definition of function `f'
            (x@~[]) = ...
 
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
index 130e6b0..a375d0f 100644 (file)
@@ -1 +1 @@
-[(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3)]
+[(1,1),(1,2),(1,3),(2,1),(2,2),(2,3),(3,1),(3,2),(3,3)]
index cda0dfc..f266a5a 100644 (file)
@@ -1,2 +1,2 @@
+dsrun005.hs:42: Non-exhaustive patterns in function f
 
-Fail: dsrun005.hs:42: Non-exhaustive patterns in function f
index 09086e6..335754f 100644 (file)
@@ -1,6 +1,6 @@
-_interface_ Int10 1 302
+_interface_ Int10 1 400
 _exports_
-Int10 T1(C1) T2(T2C1 T2C2) T3(T3C1 T3C2 T3C3) T4(T4C1 T4C2 T4C3 T4C4) T5(T5C1 T5C2 T5C3 T5C4 T5C5) T6(T6C6) T7(T7C6 T7C7) ;
+Int10 T1{C1} T2{T2C1 T2C2} T3{T3C1 T3C2 T3C3} T4{T4C1 T4C2 T4C3 T4C4} T5{T5C1 T5C2 T5C3 T5C4 T5C5} T6{T6C6} T7{T7C6 T7C7} ;
 _declarations_
 1 data T1 a = C1 a;
 1 data T2 a b = T2C1 a | T2C2 b ;
index 0cbcd0b..fdf2ca0 100644 (file)
@@ -1,6 +1,6 @@
-_interface_ Rn016 1 302
+_interface_ Rn016 1 400
 _exports_
-Rn016 K(op1 op2);
+Rn016 K{op1 op2};
 _instances_
 instance {K PrelBase.Int} = $d1;
 instance {K PrelBase.Bool} = $d2;
index c3a637c..b618774 100644 (file)
@@ -1,6 +1,6 @@
-_interface_ Rn017 1 302
+_interface_ Rn017 1 400
 _exports_
-Rn017 a b c Wibble(MkWibble) Wobble ;
+Rn017 a b c Wibble{MkWibble} Wobble ;
 _declarations_
 1 data Wibble = MkWibble Wobble ;
 1 data Wobble ;
index e69de29..6a7ad69 100644 (file)
@@ -0,0 +1,20 @@
+ghc: module version changed to 1; reason: no old .hi file
+_interface_ Test 1 400
+_instance_modules_
+IO PrelAddr PrelArr PrelBounded PrelCCall PrelForeign PrelIOBase PrelNum PrelNumExtra PrelTup
+_usages_
+PrelBase 1 :: $dEq0 1 $dEq1 1 $dEqBool0 1 $dEqChar0 1 $dEqInt0 1 $dEqInteger0 1 $dNumInt0 1 $dShow0 1 $dShow1 1 $dShow2 1 $dShowBool0 1 $dShowChar0 1 $dShowInt0 1 $m- 1 $m/= 1 $mfromInt 1 $mshowList 1 addr2Integer 1 foldr 1 int2Integer 1 integer_0 1 integer_1 1 integer_2 1 integer_m1 1 Eq 1 Num 1 Show 1 String 1;
+PrelNum 1 :: $dNumInteger0 1 $dShowInteger0 1;
+PrelNumExtra 1 :: $dEqDouble0 1 $dNumDouble0 1 $dShowDouble0 1;
+PrelPack 1 :: packCString# 1 unpackAppendCString# 1 unpackCString# 1 unpackFoldrCString# 1 unpackNBytes# 1;
+Rn017 1 ::;
+_exports_
+Rn017 a b c Wibble{MkWibble} Wobble;
+Test f FOO{:FOO :FOO op} Foo{MkFoo};
+_instances_
+instance {FOO Foo} = $dFOOFoo0;
+_declarations_
+1 $dFOOFoo0 _:_ {FOO Foo} ;;
+1 class FOO $r3I where {op :: $r3I -> PrelBase.Int} ;
+1 data Foo = MkFoo ;
+1 f _:_ _forall_ [$a] => $a -> $a ;;
index 457ba99..8e2bef9 100644 (file)
@@ -1,17 +1,33 @@
  
 rnfail014.hs:12:
-    Context constrains type variable(s) `a'
-       that do not appear in `Int -> Int'
-       in the type signature for `f'
+    The constraint `Eq a' does not mention any of
+       the universally quantified type variables {}
+       of the type `Int -> Int'
+    In the type signature for `f'
+rnfail014.hs:12:
+    The constraint `Eq a'
+       mentions type variables that do not appear in the type
+       `Int -> Int'
+    In the type signature for `f'
  
 rnfail014.hs:17:
-    Context constrains in-scope type variable(s) `a'
-       in the type signature for `op'
+    The constraint `Eq a' does not mention any of
+       the universally quantified type variables {}
+       of the type `a -> a'
+    In the type signature for `op'
+rnfail014.hs:9:
+    The constraint `Eq a' does not mention any of
+       the universally quantified type variables {}
+       of the type `Eq Bool'
+    In the type signature for an instance decl
  
 rnfail014.hs:9:
-    Context constrains type variable(s) `a'
-       that do not appear in `Eq Bool'
-       in the type signature for an instance decl
+    The constraint `Eq a'
+       mentions type variables that do not appear in the type
+       `Eq Bool'
+    In the type signature for an instance decl
 
 
 Compilation had errors
index 4112884..7fd8616 100644 (file)
@@ -1,5 +1,3 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed area2 Point2(Point2);
-_instances_
-instance _forall_ [a] => {PrelBase.Eval (Point2 a)} = $dEvalPoint20;
+ShouldSucceed area2 Point2{Point2};
index 5a7d114..40612f9 100644 (file)
@@ -6,6 +6,7 @@ SRC_HC_OPTS += -noC -dcore-lint -fno-warn-incomplete-patterns -hi-with-declarati
 
 tc019_HC_OPTS = -fglasgow-exts
 tc065_HC_OPTS = -syslib misc
+tc089_HC_OPTS = -H12m
 tc097_HC_OPTS = -fglasgow-exts
 
 # mkdependHS doesn't understand OPTIONS pragmas...
index 207cce1..a0f21b1 100644 (file)
@@ -1,4 +1,4 @@
-_interface_ TheUtils 2 302
+_interface_ TheUtils 2 400
 _instance_modules_
 PrelArr IO PrelNum
 _usages_
index 2c86042..16f2f54 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed a;
 _declarations_
-1 a _:_ _forall_ [a] {PrelBase.Num a} => a -> a ;;
+1 a _:_ _forall_ [$a] {PrelBase.Num $a} => $a -> $a ;;
index 40839ad..460d320 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed g;
 _declarations_
-1 g _:_ _forall_ [a b] {PrelBase.Num a} => ([a], b) -> a ;;
+1 g _:_ _forall_ [$a $b] {PrelBase.Num $b} => ([$b], $a) -> $b ;;
index de21ecf..4f8abeb 100644 (file)
@@ -2,4 +2,4 @@ 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 ;;
+1 n _:_ _forall_ [$a] {PrelBase.Num $a} => PrelBase.Bool -> $a ;;
index 798cdd0..2cfaf7e 100644 (file)
@@ -2,4 +2,4 @@ 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 ;;
+1 o _:_ _forall_ [$a] {PrelBase.Num $a} => (PrelBase.Bool, $a) -> $a ;;
index 221865a..37537b1 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed x;
 _declarations_
-1 x _:_ _forall_ [a] => a ;;
+1 x _:_ _forall_ [$a] => $a ;;
index f7f32bc..34a14d0 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed q;
 _declarations_
-1 q _:_ _forall_ [a] => a -> a ;;
+1 q _:_ _forall_ [$a] => $a -> $a ;;
index e63a8cf..c010997 100644 (file)
@@ -2,4 +2,4 @@ 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 ;;
+1 u _:_ _forall_ [$a $b $c] => $a -> ($b, $c) -> $a ;;
index 4bebb9c..ed5d48f 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f;
 _declarations_
-1 f _:_ _forall_ [a b] => a -> b -> a ;;
+1 f _:_ _forall_ [$a $b] => $b -> $a -> $b ;;
index f461f84..a2ccf24 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f;
 _declarations_
-1 f _:_ _forall_ [a] => a -> [a] ;;
+1 f _:_ _forall_ [$a] => $a -> [$a] ;;
index 92ddc20..004a98a 100644 (file)
@@ -2,6 +2,6 @@ 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 ;;
+1 a _:_ _forall_ [$a $b] => ($a, $b) ;;
+1 f _:_ _forall_ [$a $b $c] => $a -> ($b, $c) ;;
+1 x _:_ _forall_ [$a] => $a ;;
index aebfbac..45cd09e 100644 (file)
@@ -2,5 +2,5 @@ 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 ;;
+1 iD _:_ _forall_ [$a] => $a -> $a ;;
+1 main _:_ _forall_ [$a] => $a -> $a ;;
index ee47e92..db99b11 100644 (file)
@@ -2,6 +2,6 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed k main s;
 _declarations_
-1 k _:_ _forall_ [a b] => a -> b -> a ;;
-1 main _:_ _forall_ [a] => a -> a ;;
-1 s _:_ _forall_ [a b c] => (a -> c -> b) -> (a -> c) -> a -> b ;;
+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 ;;
index ee47e92..db99b11 100644 (file)
@@ -2,6 +2,6 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed k main s;
 _declarations_
-1 k _:_ _forall_ [a b] => a -> b -> a ;;
-1 main _:_ _forall_ [a] => a -> a ;;
-1 s _:_ _forall_ [a b c] => (a -> c -> b) -> (a -> c) -> a -> b ;;
+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 ;;
index 7033463..a8bc395 100644 (file)
@@ -2,5 +2,5 @@ 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 f _:_ _forall_ [$a] => PrelBase.Bool -> $a -> $a ;;
 1 g _:_ PrelBase.Bool -> PrelBase.Bool ;;
index 0e2072c..2061985 100644 (file)
@@ -1,9 +1,7 @@
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
 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 f _:_ _forall_ [$a] => PrelBase.Bool -> $a -> $a ;;
+1 g _:_ _forall_ [$a] => $a -> PrelBase.Bool -> $a ;;
 1 h _:_ PrelBase.Bool -> PrelBase.Bool ;;
index 4b70705..d16a48a 100644 (file)
@@ -1,9 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed G K(H M);
-_instances_
-instance {PrelBase.Eval K} = $dEvalK0;
+ShouldSucceed G K{H M};
 _declarations_
-1 $dEvalK0 _:_ {PrelBase.Eval K} ;;
 1 data K = H PrelBase.Bool |  M G ;
 1 type G = [PrelBase.Int] ;
index 33aa884..02aaf35 100644 (file)
@@ -1,8 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed Rec(Node);
-_instances_
-instance {PrelBase.Eval Rec} = $dEvalRec0;
+ShouldSucceed Rec{Node};
 _declarations_
-1 $dEvalRec0 _:_ {PrelBase.Eval Rec} ;;
 1 data Rec = Node PrelBase.Int Rec ;
index 77f034b..29aa472 100644 (file)
@@ -1,8 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed AList(Node Other);
-_instances_
-instance _forall_ [a] => {PrelBase.Eval (AList a)} = $dEvalAList0;
+ShouldSucceed AList{Node Other};
 _declarations_
-1 $dEvalAList0 _:_ _forall_ [a] => {PrelBase.Eval (AList a)} ;;
-1 data AList b = Node b [b] |  Other (b, PrelBase.Char) ;
+1 data AList $r3u = Node $r3u [$r3u] |  Other ($r3u, PrelBase.Char) ;
index 59e7b1b..6391216 100644 (file)
@@ -1,12 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed F Twine(Twine2) Twist(Twist2);
-_instances_
-instance {PrelBase.Eval Twine} = $dEvalTwine0;
-instance {PrelBase.Eval Twist} = $dEvalTwist0;
+ShouldSucceed F Twine{Twine2} Twist{Twist2};
 _declarations_
-1 $dEvalTwine0 _:_ {PrelBase.Eval Twine} ;;
-1 $dEvalTwist0 _:_ {PrelBase.Eval Twist} ;;
 1 data Twine = Twine2 Twist ;
 1 data Twist = Twist2 Twine ;
 1 type F = Twine ;
index 17c9de2..faa3404 100644 (file)
@@ -1,10 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed g AList(ANull ANode) IntList;
-_instances_
-instance _forall_ [a] => {PrelBase.Eval (AList a)} = $dEvalAList0;
+ShouldSucceed g AList{ANull ANode} IntList;
 _declarations_
-1 $dEvalAList0 _:_ _forall_ [a] => {PrelBase.Eval (AList a)} ;;
-1 data AList a = ANull |  ANode a (AList a) ;
-1 g _:_ _forall_ [a] {PrelBase.Num a} => AList PrelBase.Bool -> a ;;
+1 data AList $r3C = ANull |  ANode $r3C (AList $r3C) ;
+1 g _:_ _forall_ [$a] {PrelBase.Num $a} => AList PrelBase.Bool -> $a ;;
 1 type IntList = AList PrelBase.Int ;
index 3e8b793..c3ed042 100644 (file)
@@ -1,10 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed g AnnExpr Expr(Var App);
-_instances_
-instance _forall_ [a] => {PrelBase.Eval (Expr a)} = $dEvalExpr0;
+ShouldSucceed g AnnExpr Expr{Var App};
 _declarations_
-1 $dEvalExpr0 _:_ _forall_ [a] => {PrelBase.Eval (Expr a)} ;;
-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) ;
+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) ;
index 257bfbd..633196f 100644 (file)
@@ -1,5 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed A(:A :A op1);
+ShouldSucceed A{:A :A op1};
 _declarations_
-1 class {PrelBase.Eq a} => A a where {op1 :: a -> a} ;
+1 class {PrelBase.Eq $r3t}  => A $r3t where {op1 :: $r3t -> $r3t} ;
index f74fa02..f9130c8 100644 (file)
@@ -1,8 +1,8 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed Eq'(:Eq' :Eq' deq);
+ShouldSucceed Eq'{:Eq' :Eq' deq};
 _instances_
-instance _forall_ [a] {Eq' a} => {Eq' [a]} = $dEq'0;
+instance _forall_ [$a] {Eq' $a} => {Eq' [$a]} = $dEq'0;
 _declarations_
-1 $dEq'0 _:_ _forall_ [a] {Eq' a} => {Eq' [a]} ;;
-1 class Eq' a where {deq :: a -> a -> PrelBase.Bool} ;
+1 $dEq'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
+1 class Eq' $r3G where {deq :: $r3G -> $r3G -> PrelBase.Bool} ;
index 9f9f69f..86ef92b 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f;
 _declarations_
-1 f _:_ _forall_ [a] {PrelBase.Num a} => [a] -> [a] ;;
+1 f _:_ _forall_ [$a] {PrelBase.Num $a, PrelBase.Eq $a} => [$a] -> [$a] ;;
index 257bfbd..633196f 100644 (file)
@@ -1,5 +1,5 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed A(:A :A op1);
+ShouldSucceed A{:A :A op1};
 _declarations_
-1 class {PrelBase.Eq a} => A a where {op1 :: a -> a} ;
+1 class {PrelBase.Eq $r3t}  => A $r3t where {op1 :: $r3t -> $r3t} ;
index f152e88..c5b8a06 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f;
 _declarations_
-1 f _:_ _forall_ [a] {PrelBase.Eq a} => a -> [a] ;;
+1 f _:_ _forall_ [$a] {PrelBase.Eq $a} => $a -> [$a] ;;
index 5dbc6f6..5f0b57b 100644 (file)
@@ -1,9 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f H(:H :H op1);
+ShouldSucceed f H{:H :H op1};
 _instances_
 instance {H PrelBase.Bool} = $dHBool0;
 _declarations_
 1 $dHBool0 _:_ {H PrelBase.Bool} ;;
-1 class H a where {op1 :: a -> a -> a} ;
+1 class H $r3F where {op1 :: $r3F -> $r3F -> $r3F} ;
 1 f _:_ PrelBase.Bool -> PrelBase.Int -> PrelBase.Bool ;;
index 16b3484..b27ae35 100644 (file)
@@ -1,32 +1,21 @@
 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);
-_instances_
-instance {PrelBase.Eval Boolean} = $dEvalBoolean0;
-instance _forall_ [a] => {PrelBase.Eval (List a)} = $dEvalList0;
-instance {PrelBase.Eval Nat} = $dEvalNat0;
-instance _forall_ [a b] => {PrelBase.Eval (Pair a b)} = $dEvalPair0;
-instance _forall_ [a] => {PrelBase.Eval (Tree a)} = $dEvalTree0;
+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 $dEvalBoolean0 _:_ {PrelBase.Eval Boolean} ;;
-1 $dEvalList0 _:_ _forall_ [a] => {PrelBase.Eval (List a)} ;;
-1 $dEvalNat0 _:_ {PrelBase.Eval Nat} ;;
-1 $dEvalPair0 _:_ _forall_ [a b] => {PrelBase.Eval (Pair a b)} ;;
-1 $dEvalTree0 _:_ _forall_ [a] => {PrelBase.Eval (Tree a)} ;;
 1 add _:_ Nat -> Nat -> Nat ;;
-1 app _:_ _forall_ [a] => List a -> List a -> List a ;;
+1 app _:_ _forall_ [$a] => List $a -> List $a -> List $a ;;
 1 before _:_ List Nat -> List Nat ;;
 1 data Boolean = FF |  TT ;
-1 data List alpha = Nil |  Cons alpha (List alpha) ;
+1 data List $r5K = Nil |  Cons $r5K (List $r5K) ;
 1 data Nat = Zero |  Succ Nat ;
-1 data Pair a b = Mkpair a b ;
-1 data Tree t = Leaf t |  Node (Tree t) (Tree t) ;
-1 flatten _:_ _forall_ [a] => Tree a -> List a ;;
+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 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 rEverse _:_ _forall_ [$a] => List $a -> List $a ;;
 1 sUm _:_ Tree Nat -> Nat ;;
-1 swap _:_ _forall_ [a b] => Pair a b -> Pair b a ;;
+1 swap _:_ _forall_ [$a $b] => Pair $a $b -> Pair $b $a ;;
index afcc264..f85d585 100644 (file)
@@ -1,12 +1,12 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f A(:A :A op1) B(:B :B op2);
+ShouldSucceed f A{:A :A op1} B{:B :B op2};
 _instances_
 instance {A PrelBase.Int} = $dAInt0;
-instance _forall_ [a] {B a} => {B [a]} = $dB0;
+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 a where {op1 :: a} ;
-1 class B b where {op2 :: b -> PrelBase.Int} ;
-1 f _:_ _forall_ [a b] {A b} => a -> b ;;
+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 ;;
index 8999dbf..0c66ee7 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f;
 _declarations_
-1 f _:_ _forall_ [a] => a -> PrelBase.() ;;
+1 f _:_ _forall_ [$a] => $a -> PrelBase.() ;;
index 6dfe21e..e24e4f6 100644 (file)
@@ -1,11 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed B(:B :B op2) C(:C :C op1);
+ShouldSucceed B{:B :B op2} C{:C :C op1};
 _instances_
-instance _forall_ [a] {B a} => {B [a]} = $dB0;
-instance _forall_ [a] => {C [a]} = $dC0;
+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 a} => B a where {op2 :: a -> a -> a} ;
-1 class C a where {op1 :: a -> a} ;
+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} ;
index ae045aa..63621c0 100644 (file)
@@ -1,6 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed B(:B :B op2) C(:C :C op1);
+ShouldSucceed B{:B :B op2} C{:C :C op1};
 _declarations_
-1 class {C a} => B a where {op2 :: a -> a -> a} ;
-1 class C a where {op1 :: a -> a} ;
+1 class {C $r3x}  => B $r3x where {op2 :: $r3x -> $r3x -> $r3x} ;
+1 class C $r3A where {op1 :: $r3A -> $r3A} ;
index 4fa71f4..512ff5c 100644 (file)
@@ -2,7 +2,7 @@ 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 a = [a] ;
+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] ;
index 400bbf5..173db16 100644 (file)
@@ -1,18 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed mAp ranAFE ranOAL sNd AFE(MkAFE) FG(MkFG) OL(MkOL);
-_instances_
-instance _forall_ [a b c] => {PrelBase.Eval (AFE a b c)} = $dEvalAFE0;
-instance _forall_ [a b] => {PrelBase.Eval (FG a b)} = $dEvalFG0;
-instance _forall_ [a] => {PrelBase.Eval (OL a)} = $dEvalOL0;
+ShouldSucceed mAp ranAFE ranOAL sNd AFE{MkAFE} FG{MkFG} OL{MkOL};
 _declarations_
-1 $dEvalAFE0 _:_ _forall_ [a b c] => {PrelBase.Eval (AFE a b c)} ;;
-1 $dEvalFG0 _:_ _forall_ [a b] => {PrelBase.Eval (FG a b)} ;;
-1 $dEvalOL0 _:_ _forall_ [a] => {PrelBase.Eval (OL a)} ;;
-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_ [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 ;;
+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 ;;
index 5e77c6d..eb84e61 100644 (file)
@@ -2,14 +2,14 @@ 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.Ord a, PrelBase.Num a} => a -> a ;;
+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 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 ;;
index 6958c61..babed2c 100644 (file)
@@ -1,12 +1,12 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f g Foo(:Foo :Foo o_and);
+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 a where {o_and :: a -> a -> a} ;
-1 f _:_ _forall_ [a] => PrelBase.Bool -> a -> PrelBase.Bool ;;
-1 g _:_ _forall_ [a b] {Foo b, PrelBase.Num b} => b -> a -> b ;;
+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 ;;
index eb4745f..711eb20 100644 (file)
@@ -1,13 +1,13 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed Eq'(:Eq' :Eq' doubleeq) Ord'(:Ord' :Ord' lt);
+ShouldSucceed Eq'{:Eq' :Eq' doubleeq} Ord'{:Ord' :Ord' lt};
 _instances_
-instance _forall_ [a] {Eq' a} => {Eq' [a]} = $dEq'0;
+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'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
 1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
 1 $dOrd'Int0 _:_ {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 class Eq' $r3Q where {doubleeq :: $r3Q -> $r3Q -> PrelBase.Bool} ;
+1 class {Eq' $r3N}  => Ord' $r3N where {lt :: $r3N -> $r3N -> PrelBase.Bool} ;
index 69084ba..baee018 100644 (file)
@@ -2,6 +2,6 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed A B C;
 _declarations_
-1 type A a = B a ;
-1 type B c = C ;
+1 type A $r3v = B $r3v ;
+1 type B $r3t = C ;
 1 type C = PrelBase.Int ;
index 4ca8186..72d70c0 100644 (file)
@@ -1,11 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f Eq'(:Eq' :Eq' deq);
+ShouldSucceed f Eq'{:Eq' :Eq' deq};
 _instances_
-instance _forall_ [a] {Eq' a} => {Eq' [a]} = $dEq'0;
+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'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
 1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
-1 class Eq' a where {deq :: a -> a -> PrelBase.Bool} ;
-1 f _:_ _forall_ [a] {Eq' [a], PrelBase.Num a} => [a] -> PrelBase.Bool ;;
+1 class Eq' $r3K where {deq :: $r3K -> $r3K -> PrelBase.Bool} ;
+1 f _:_ _forall_ [$a] {PrelBase.Num $a, Eq' [$a]} => [$a] -> PrelBase.Bool ;;
index 7139413..334bd7f 100644 (file)
@@ -1,12 +1,12 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f Eq'(:Eq' :Eq' doubleeq) Ord'(:Ord' :Ord' lt);
+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' a where {doubleeq :: a -> a -> PrelBase.Bool} ;
-1 class {Eq' a} => Ord' a where {lt :: a -> a -> PrelBase.Bool} ;
-1 f _:_ _forall_ [a b] {Ord' b, PrelBase.Num b} => b -> a -> PrelBase.Bool ;;
+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 ;;
index 2dfd583..945f274 100644 (file)
@@ -1,8 +1,6 @@
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
 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 ;;
+1 x _:_ _forall_ [$a $b] => $a -> $a ;;
+1 y _:_ _forall_ [$a $b] => $b -> $b ;;
index ca654bb..f9b1457 100644 (file)
@@ -1,16 +1,16 @@
  
 tc056.hs:15: Warning:
-    Duplicated class assertion `Eq' a' in the context: (Eq' a, Eq' a)
+    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);
+ShouldSucceed f Eq'{:Eq' :Eq' doubleeq} Ord'{:Ord' :Ord' lt};
 _instances_
-instance _forall_ [a] {Eq' a, Eq' a} => {Eq' [a]} = $dEq'0;
+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} => {Eq' [a]} ;;
+1 $dEq'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
 1 $dEq'Int0 _:_ {Eq' 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_ [a b] {Eq' [b], PrelBase.Num b} => [b] -> a -> PrelBase.Bool ;;
+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 ;;
index 1afaa80..5a23333 100644 (file)
@@ -1,12 +1,12 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed dand f Eq'(:Eq' :Eq' deq);
+ShouldSucceed dand f Eq'{:Eq' :Eq' deq};
 _instances_
-instance _forall_ [a] {Eq' a} => {Eq' [a]} = $dEq'0;
+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'0 _:_ _forall_ [$a] {Eq' $a} => {Eq' [$a]} ;;
 1 $dEq'Int0 _:_ {Eq' PrelBase.Int} ;;
-1 class Eq' a where {deq :: a -> a -> PrelBase.Bool} ;
+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 ;;
+1 f _:_ _forall_ [$a] {Eq' $a} => $a -> $a -> PrelBase.Bool ;;
index 2b8ad27..a4b2af2 100644 (file)
@@ -1,14 +1,14 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f Eq2(:Eq2 :Eq2 doubleeq) Ord2(:Ord2 :Ord2 lt);
+ShouldSucceed f Eq2{:Eq2 :Eq2 doubleeq} Ord2{:Ord2 :Ord2 lt};
 _instances_
-instance _forall_ [a] {Eq2 a, Ord2 a} => {Eq2 [a]} = $dEq20;
+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 $dEq20 _:_ _forall_ [$a] {Eq2 $a, Ord2 $a} => {Eq2 [$a]} ;;
 1 $dEq2Int0 _:_ {Eq2 PrelBase.Int} ;;
 1 $dOrd2Int0 _:_ {Ord2 PrelBase.Int} ;;
-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_ [a b] {Eq2 [b], PrelBase.Num b} => [b] -> a -> PrelBase.Bool ;;
+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 ;;
index 2e3350b..fdac88b 100644 (file)
@@ -1,11 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f Eq2(:Eq2 :Eq2 foo deq);
+ShouldSucceed f Eq2{:Eq2 :Eq2 foo deq};
 _instances_
-instance _forall_ [a] {Eq2 a} => {Eq2 [a]} = $dEq20;
+instance _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} = $dEq20;
 instance {Eq2 PrelBase.Int} = $dEq2Int0;
 _declarations_
-1 $dEq20 _:_ _forall_ [a] {Eq2 a} => {Eq2 [a]} ;;
+1 $dEq20 _:_ _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} ;;
 1 $dEq2Int0 _:_ {Eq2 PrelBase.Int} ;;
-1 class Eq2 a where {foo :: a -> a; deq :: a -> a -> PrelBase.Bool} ;
-1 f _:_ _forall_ [a] {Eq2 [a], PrelBase.Num a} => [a] -> PrelBase.Bool ;;
+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 ;;
index 825c3a6..f4b6aa3 100644 (file)
@@ -1,10 +1,10 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed Eq2(:Eq2 :Eq2 deq);
+ShouldSucceed Eq2{:Eq2 :Eq2 deq};
 _instances_
-instance _forall_ [a] {Eq2 a} => {Eq2 [a]} = $dEq20;
+instance _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} = $dEq20;
 instance {Eq2 PrelBase.Int} = $dEq2Int0;
 _declarations_
-1 $dEq20 _:_ _forall_ [a] {Eq2 a} => {Eq2 [a]} ;;
+1 $dEq20 _:_ _forall_ [$a] {Eq2 $a} => {Eq2 [$a]} ;;
 1 $dEq2Int0 _:_ {Eq2 PrelBase.Int} ;;
-1 class Eq2 a where {deq :: a -> a -> PrelBase.Bool} ;
+1 class Eq2 $r3H where {deq :: $r3H -> $r3H -> PrelBase.Bool} ;
index 2943fd4..ce9b08c 100644 (file)
@@ -1,10 +1,10 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed Eq1(:Eq1 :Eq1 deq);
+ShouldSucceed Eq1{:Eq1 :Eq1 deq};
 _instances_
-instance _forall_ [a] {Eq1 a} => {Eq1 [a]} = $dEq10;
+instance _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} = $dEq10;
 instance {Eq1 PrelBase.Int} = $dEq1Int0;
 _declarations_
-1 $dEq10 _:_ _forall_ [a] {Eq1 a} => {Eq1 [a]} ;;
+1 $dEq10 _:_ _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} ;;
 1 $dEq1Int0 _:_ {Eq1 PrelBase.Int} ;;
-1 class Eq1 a where {deq :: a -> a -> PrelBase.Bool} ;
+1 class Eq1 $r3H where {deq :: $r3H -> $r3H -> PrelBase.Bool} ;
index 5b81052..515302d 100644 (file)
@@ -1,11 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f Eq1(:Eq1 :Eq1 deq);
+ShouldSucceed f Eq1{:Eq1 :Eq1 deq};
 _instances_
-instance _forall_ [a] {Eq1 a} => {Eq1 [a]} = $dEq10;
+instance _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} = $dEq10;
 instance {Eq1 PrelBase.Int} = $dEq1Int0;
 _declarations_
-1 $dEq10 _:_ _forall_ [a] {Eq1 a} => {Eq1 [a]} ;;
+1 $dEq10 _:_ _forall_ [$a] {Eq1 $a} => {Eq1 [$a]} ;;
 1 $dEq1Int0 _:_ {Eq1 PrelBase.Int} ;;
-1 class Eq1 a where {deq :: a -> a -> PrelBase.Bool} ;
-1 f _:_ _forall_ [a] {Eq1 [a]} => [a] -> [a] -> PrelBase.Bool ;;
+1 class Eq1 $r3M where {deq :: $r3M -> $r3M -> PrelBase.Bool} ;
+1 f _:_ _forall_ [$a] {Eq1 [$a]} => [$a] -> [$a] -> PrelBase.Bool ;;
index 9b1d8fe..b131219 100644 (file)
@@ -1,14 +1,12 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed g Reps(:Reps :Reps f) X(Tag);
+ShouldSucceed g Reps{:Reps :Reps f} X{Tag};
 _instances_
-instance _forall_ [a] => {PrelBase.Eval (X a)} = $dEvalX0;
 instance {Reps PrelBase.Bool} = $dRepsBool0;
-instance _forall_ [a] => {Reps (X a)} = $dRepsX0;
+instance _forall_ [$a] => {Reps (X $a)} = $dRepsX0;
 _declarations_
-1 $dEvalX0 _:_ _forall_ [a] => {PrelBase.Eval (X a)} ;;
 1 $dRepsBool0 _:_ {Reps PrelBase.Bool} ;;
-1 $dRepsX0 _:_ _forall_ [a] => {Reps (X a)} ;;
-1 class Reps r where {f :: r -> r -> r} ;
-1 data X a = Tag a ;
-1 g _:_ _forall_ [a] {Reps a} => a -> a ;;
+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 ;;
index 5734a1d..7e78f40 100644 (file)
@@ -1,9 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed idb Boolean(FF TT);
-_instances_
-instance {PrelBase.Eval Boolean} = $dEvalBoolean0;
+ShouldSucceed idb Boolean{FF TT};
 _declarations_
-1 $dEvalBoolean0 _:_ {PrelBase.Eval Boolean} ;;
 1 data Boolean = FF |  TT ;
 1 idb _:_ Boolean -> Boolean ;;
index b8c7bf9..babf6d9 100644 (file)
@@ -1,9 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f Pair(MkPair);
-_instances_
-instance _forall_ [a b] => {PrelBase.Eval (Pair a b)} = $dEvalPair0;
+ShouldSucceed f Pair{MkPair};
 _declarations_
-1 $dEvalPair0 _:_ _forall_ [a b] => {PrelBase.Eval (Pair a b)} ;;
-1 data Pair a b = MkPair a b ;
-1 f _:_ _forall_ [a b c :: (* -> *)] {PrelBase.Monad c} => c (Pair a b) -> c b ;;
+1 data Pair $r3x $r3y = MkPair $r3x $r3y ;
+1 f _:_ _forall_ [$a :: (* -> *) $b $c] {PrelBase.Monad $a} => $a (Pair $b $c) -> $a $c ;;
index 8b2ab9b..079db7f 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f;
 _declarations_
-1 f _:_ _forall_ [a] => [a] -> [a] ;;
+1 f _:_ _forall_ [$a] => [$a] -> [$a] ;;
index f99b609..6b96b5c 100644 (file)
@@ -1,15 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed B(X Y) T(D C);
+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;
-instance _forall_ [a] => {PrelBase.Eval (B a)} = $dEvalB0;
-instance _forall_ [a] => {PrelBase.Eval (T a)} = $dEvalT0;
+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 $dEvalB0 _:_ _forall_ [a] => {PrelBase.Eval (B a)} ;;
-1 $dEvalT0 _:_ _forall_ [a] => {PrelBase.Eval (T a)} ;;
-1 data B b = X |  Y b ;
-1 data T a = D (B a) |  C ;
+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 ;
index 5734a1d..7e78f40 100644 (file)
@@ -1,9 +1,6 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed idb Boolean(FF TT);
-_instances_
-instance {PrelBase.Eval Boolean} = $dEvalBoolean0;
+ShouldSucceed idb Boolean{FF TT};
 _declarations_
-1 $dEvalBoolean0 _:_ {PrelBase.Eval Boolean} ;;
 1 data Boolean = FF |  TT ;
 1 idb _:_ Boolean -> Boolean ;;
index 8b2ab9b..079db7f 100644 (file)
@@ -2,4 +2,4 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f;
 _declarations_
-1 f _:_ _forall_ [a] => [a] -> [a] ;;
+1 f _:_ _forall_ [$a] => [$a] -> [$a] ;;
index f99b609..6b96b5c 100644 (file)
@@ -1,15 +1,11 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed B(X Y) T(D C);
+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;
-instance _forall_ [a] => {PrelBase.Eval (B a)} = $dEvalB0;
-instance _forall_ [a] => {PrelBase.Eval (T a)} = $dEvalT0;
+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 $dEvalB0 _:_ _forall_ [a] => {PrelBase.Eval (B a)} ;;
-1 $dEvalT0 _:_ _forall_ [a] => {PrelBase.Eval (T a)} ;;
-1 data B b = X |  Y b ;
-1 data T a = D (B a) |  C ;
+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 ;
index 2ec321b..f162b32 100644 (file)
@@ -1,10 +1,7 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed EQ(:EQ :EQ ===) NUM(ONE TWO) ORD(:ORD :ORD);
-_instances_
-instance {PrelBase.Eval NUM} = $dEvalNUM0;
+ShouldSucceed EQ{:EQ :EQ ===} NUM{ONE TWO} ORD{:ORD :ORD};
 _declarations_
-1 $dEvalNUM0 _:_ {PrelBase.Eval NUM} ;;
-1 class {ORD a, PrelBase.Show a} => EQ a where {=== :: a -> a -> PrelBase.Bool} ;
-1 class {PrelBase.Num a} => ORD a ;
+1 class {ORD $r3B, PrelBase.Show $r3B}  => EQ $r3B where {=== :: $r3B -> $r3B -> PrelBase.Bool} ;
+1 class {PrelBase.Num $r3F}  => ORD $r3F ;
 1 data NUM = ONE |  TWO ;
index 8431460..cb57d73 100644 (file)
@@ -5,13 +5,11 @@ tc078.hs:7: Warning:
 
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldFail Bar(MkBar);
+ShouldFail Bar{MkBar};
 _instances_
-instance _forall_ [a] {PrelBase.Eq a} => {PrelBase.Eq (Bar a)} = $dEqBar0;
-instance _forall_ [a] => {PrelBase.Eval (Bar a)} = $dEvalBar0;
-instance _forall_ [a] {PrelBase.Ord a} => {PrelBase.Ord (Bar a)} = $dOrdBar0;
+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 $dEvalBar0 _:_ _forall_ [a] => {PrelBase.Eval (Bar a)} ;;
-1 $dOrdBar0 _:_ _forall_ [a] {PrelBase.Ord a, PrelBase.Eq (Bar a)} => {PrelBase.Ord (Bar a)} ;;
-1 data Bar a = MkBar PrelBase.Int a ;
+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 ;
index 0a1d3b1..56b5e08 100644 (file)
@@ -1,12 +1,12 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed Foo(:Foo :Foo op2 op1);
+ShouldSucceed Foo{:Foo :Foo op2 op1};
 _instances_
-instance _forall_ [a] {Foo a} => {Foo [a]} = $dFoo0;
+instance _forall_ [$a] {Foo $a} => {Foo [$a]} = $dFoo0;
 instance {Foo PrelBase.Int} = $dFooInt0;
 _declarations_
-1 $dFoo0 _:_ _forall_ [a] {Foo a} => {Foo [a]} ;;
+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 a where {op2 = :: _forall_ [b] {PrelBase.Ord b} => a -> b -> b -> b; op1 = :: a -> PrelBase.Bool} ;
+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} ;
index ccaf3b8..549b1e1 100644 (file)
@@ -1,22 +1,22 @@
 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);
+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 _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 $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 $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 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 span' _:_ _forall_ [$a] => ($a -> PrelBase.Bool) -> [$a] -> ([$a], [$a]) ;;
 1 strToInt _:_ PrelBase.String -> PrelBase.Int ;;
 1 whiteSpace _:_ PrelBase.String -> PrelBase.String ;;
index c4048b4..1d22d27 100644 (file)
@@ -2,6 +2,6 @@ ghc: module version changed to 1; reason: no old .hi file
 _exports_
 ShouldSucceed f f2 f3;
 _declarations_
-1 f _:_ _forall_ [a] {PrelBase.Num a, PrelBase.Ord a} => a -> (a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;;
-1 f2 _:_ _forall_ [a] {PrelBase.Num a, PrelBase.Ord a} => a -> (a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;;
-1 f3 _:_ _forall_ [a] {PrelBase.Num a, PrelBase.Ord a} => a -> (a, PrelBase.Bool, [PrelBase.Bool], [PrelBase.Char]) ;;
+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 d6c860a..e81df92 100644 (file)
@@ -1,11 +1,9 @@
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed f Normal(:Normal :Normal normal);
+ShouldSucceed f Normal{:Normal :Normal normal};
 _instances_
-instance _forall_ [a b] => {Normal (a -> b)} = $dNormal0;
+instance _forall_ [$a $b] => {Normal ($a -> $b)} = $dNormal0;
 _declarations_
-1 $dNormal0 _:_ _forall_ [a b] => {Normal (a -> b)} ;;
-1 class Normal a where {normal :: a -> PrelBase.Bool} ;
-1 f _:_ _forall_ [a] => a -> PrelBase.Bool ;;
+1 $dNormal0 _:_ _forall_ [$a $b] => {Normal ($a -> $b)} ;;
+1 class Normal $r3D where {normal :: $r3D -> PrelBase.Bool} ;
+1 f _:_ _forall_ [$a] => $a -> PrelBase.Bool ;;
index 4336751..70a6203 100644 (file)
@@ -2,6 +2,6 @@ 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 ;;
+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 ;;
index 657ba01..cdd95a7 100644 (file)
@@ -1,13 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-IOExts boundsIOArray freezeIOArray newIOArray newIORef readIOArray readIORef reallyUnsafePtrEq writeIOArray writeIORef IOArray IORef;
-PrelGHC *# *## **## +# +## -# -## /# /## /=# /=## <# <## <=# <=## ==# ==## ># >## >=# >=## acosDouble# acosFloat# addr2Int# and# asinDouble# asinFloat# assert__ atanDouble# atanFloat# chr# cmpInteger# cosDouble# cosFloat# coshDouble# coshFloat# deRefStablePtr# decodeDouble# decodeFloat# delay# divideFloat# double2Float# double2Int# encodeDouble# encodeFloat# eqAddr# eqChar# eqFloat# eqWord# errorIO# 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# indexIntArray# indexIntOffAddr# indexIntOffForeignObj# indexWordArray# indexWordOffAddr# indexWordOffForeignObj# int2Addr# int2Double# int2Float# int2Integer# int2Word# integer2Int# integer2Word# 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# newSynchVar# newWordArray# not# or# ord# par# parAt# parAtAbs# parAtForNow# parAtRel# parGlobal# parLocal# plusFloat# plusInteger# powerFloat# putMVar# quotInt# quotRemInteger# quotWord# readAddrArray# readArray# readCharArray# readDoubleArray# readFloatArray# readIntArray# readWordArray# realWorld# reallyUnsafePtrEquality# remInt# remWord# sameMutableArray# sameMutableByteArray# seq# shiftL# shiftRA# shiftRL# sinDouble# sinFloat# sinhDouble# sinhFloat# sizeofByteArray# sizeofMutableByteArray# sqrtDouble# sqrtFloat# takeMVar# tanDouble# tanFloat# tanhDouble# tanhFloat# timesFloat# timesInteger# unsafeFreezeArray# unsafeFreezeByteArray# waitRead# waitWrite# word2Int# word2Integer# writeAddrArray# writeArray# writeCharArray# writeDoubleArray# writeFloatArray# writeForeignObj# writeIntArray# writeWordArray# xor# -> Addr# All Array# ByteArray# CCallable CReturnable Char# Double# Float# ForeignObj# Int# Int64# MutableArray# MutableByteArray# RealWorld StablePtr# State# SynchVar# Void Word# Word64#;
-PrelHandle openFileEx IOModeEx(BinaryMode TextMode);
-PrelIOBase fixIO performGC;
-PrelUnsafe trace unsafeInterleaveIO unsafePerformIO;
-_instances_
-instance {PrelBase.Eval FooData} = $dEvalFooData0;
+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_
-1 $dEvalFooData0 _:_ {PrelBase.Eval FooData} ;;
 1 data FooData = FooData ;
 1 type FooType = PrelBase.Int ;
index f85e891..55c52c1 100644 (file)
@@ -2,8 +2,8 @@ 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 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} ;
+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} ;
index 415fbc6..ae46714 100644 (file)
@@ -18,7 +18,7 @@ toOrderedList q               =  case splitMin q of
 insertMany x q         =  foldr insert q x
 pqSort q x             =  toOrderedList (insertMany x q)
 
-check                  :: (PriorityQueue q) => (Ord a => q a) -> IO ()
+check                  :: forall q. (PriorityQueue q) => (forall a. Ord a => q a) -> IO ()
 check empty            =  do
     putStr "*** sorting\n"
     out (pqSort empty [1 .. 99])
index c3d9f48..8850108 100644 (file)
@@ -1,15 +1,12 @@
 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);
-_instances_
-instance _forall_ [a :: (* -> *) b] => {PrelBase.Eval (SeqView a b)} = $dEvalSeqView0;
+ShouldSucceed check insertMany out pqSort toOrderedList PriorityQueue{:PriorityQueue :PriorityQueue splitMin meld insert single empty} SeqView{Null Cons};
 _declarations_
-1 $dEvalSeqView0 _:_ _forall_ [a :: (* -> *) b] => {PrelBase.Eval (SeqView a b)} ;;
-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 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 b :: (* -> *)] {PriorityQueue b, PrelBase.Ord a} => [a] -> b a -> b a ;;
-1 out _:_ _forall_ [a] {PrelBase.Num a} => [a] -> PrelIOBase.IO PrelBase.() ;;
-1 pqSort _:_ _forall_ [a :: (* -> *) b] {PrelBase.Ord b, PriorityQueue a} => a b -> [b] -> [b] ;;
-1 toOrderedList _:_ _forall_ [a :: (* -> *) b] {PriorityQueue a, PrelBase.Ord b} => a b -> [b] ;;
+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] ;;
index 376c601..87a99d9 100644 (file)
@@ -1,8 +1,8 @@
 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;
+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.Eval (a -> b)} => {PrelBase.Num (a -> b)} ;;
+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)} ;;
index 68e1571..8ef36a6 100644 (file)
@@ -2,37 +2,37 @@ 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] => a -> b -> c -> a ;;
-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, (j, (c, (d, (e, f)))), (b, (c, (d, (e, f))), (g, (d, (e, f)), (h, (e, f), (i, f, f))))) -> (k, (j, (c, (d, (e, f))))) -> a ;;
-1 fac_rec _:_ _forall_ [a b c d e] => (c -> d -> a) -> (b, d, c) -> (e, d) -> b ;;
-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, (d, c), (b, c, c)) -> (e, (d, c)) -> a ;;
-1 fac_rec3 _:_ _forall_ [a b c d e f g] => (a, (f, (c, d)), (b, (c, d), (e, d, d))) -> (g, (f, (c, d))) -> a ;;
-1 fac_rec4 _:_ _forall_ [a b c d e f g h i] => (a, (h, (c, (d, e))), (b, (c, (d, e)), (f, (d, e), (g, e, e)))) -> (i, (h, (c, (d, e)))) -> 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, t4a, t49) -> (a, (t4b, (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)))))))), (t4b, (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 -> j -> a) -> (g -> e -> h -> k -> a) -> f -> b -> (f, e, g) -> (i, j, k) -> i ;;
-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, e, d) -> (a, (f, c, c), (f, e, e)) -> a ;;
-1 g_rec3 _:_ _forall_ [a b c d e f g h i j k l] => l -> b -> (l, g, f) -> (a, (i, (d, e, e), (d, c, c)), (i, (j, k, k), (j, h, h))) -> 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, k, j) -> (a, (l, (c, (d, e, e), (d, f, f)), (c, (g, h, h), (g, i, i))), (l, (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, s, r) -> (a, (t, (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)))), (t, (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, ty, tx) -> (a, (tz, (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))))), (tz, (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, t14, t13) -> (a, (t15, (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)))))), (t15, (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, t26, t25) -> (a, (t27, (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))))))), (t27, (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 ;;
+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 ;;
index 39b602f..a69fc17 100644 (file)
@@ -2,5 +2,5 @@ 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 ;;
+1 a _:_ _forall_ [$a] {PrelBase.Ord $a} => $a ;;
+1 b _:_ _forall_ [$a] {PrelBase.Ord $a} => $a ;;
index 16f8baa..fe869c2 100644 (file)
@@ -2,6 +2,6 @@ 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] ;;
+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 31e96b8..caffe4b 100644 (file)
@@ -1,12 +1,9 @@
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed e0 e1 e2 q Empty(Empty);
-_instances_
-instance _forall_ [a :: (* -> *)] => {PrelBase.Eval (Empty a)} = $dEvalEmpty0;
+ShouldSucceed e0 e1 e2 q Empty{Empty};
 _declarations_
-1 $dEvalEmpty0 _:_ _forall_ [a :: (* -> *)] => {PrelBase.Eval (Empty a)} ;;
-1 data Empty q :: (* -> *) = Empty (_forall_ [a] {PrelBase.Ord a} => q a) ;
+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] ;;
+1 q _:_ _forall_ [$a] {PrelBase.Ord $a} => [$a] ;;
index 29630d4..cfc536c 100644 (file)
@@ -1,22 +1,20 @@
+
+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);
+ShouldSucceed bindState foo unState unitState St State{State} TS{TS vs};
 _instances_
 instance {PrelBase.Eq TS} = $dEqTS0;
-instance _forall_ [a b] => {PrelBase.Eval (State a b)} = $dEvalState0;
-instance {PrelBase.Eval TS} = $dEvalTS0;
-instance _forall_ [a] {PrelBase.Eq a} => {PrelBase.Monad (State a)} = $dMonadState0;
+instance _forall_ [$a] {PrelBase.Eq $a} => {PrelBase.Monad (State $a)} = $dMonadState0;
 instance {PrelBase.Show TS} = $dShowTS0;
 _declarations_
 1 $dEqTS0 _:_ {PrelBase.Eq TS} ;;
-1 $dEvalState0 _:_ _forall_ [a b] => {PrelBase.Eval (State a b)} ;;
-1 $dEvalTS0 _:_ {PrelBase.Eval TS} ;;
-1 $dMonadState0 _:_ _forall_ [a] {PrelBase.Eq a} => {PrelBase.Monad (State a)} ;;
+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 c a = State (c -> (a, c)) ;
+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)) ;
 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 unState _:_ _forall_ [$a $b] => State $a $b -> $a -> ($b, $a) ;;
+1 unitState _:_ _forall_ [$a $b] => $a -> State $b $a ;;
index 30e5b7b..dd425eb 100644 (file)
@@ -1,46 +1,39 @@
-
-NOTE: Simplifier still going after 4 iterations; bailing out.
+NOTE: Simplifier still going after 4 iterations; baling out.
 ghc: module version changed to 1; reason: no old .hi file
 _exports_
-ShouldSucceed action_0 action_1 action_2 action_3 action_4 action_5 action_6 happyAccept happyError happyFail happyGoto happyMonadReduce happyNewToken happyParse happyReduce happyReduce_1 happyReduce_2 happyReduce_3 happyReturn happyShift happySpecReduce_0 happySpecReduce_1 happySpecReduce_2 happySpecReduce_3 happyThen main myparser notHappyAtAll HappyAbsSyn(HappyTerminal HappyErrorToken HappyAbsSyn1 HappyAbsSyn2 HappyAbsSyn3) HappyState(HappyState) Token(TokenInt TokenVar TokenEq);
+ShouldSucceed action_0 action_1 action_2 action_3 action_4 action_5 action_6 happyAccept happyError happyFail happyGoto happyMonadReduce happyNewToken happyParse happyReduce happyReduce_1 happyReduce_2 happyReduce_3 happyReturn happyShift happySpecReduce_0 happySpecReduce_1 happySpecReduce_2 happySpecReduce_3 happyThen main myparser notHappyAtAll HappyAbsSyn{HappyTerminal HappyErrorToken HappyAbsSyn1 HappyAbsSyn2 HappyAbsSyn3} HappyState{HappyState} Token{TokenInt TokenVar TokenEq};
 _instances_
-instance _forall_ [a b c] => {PrelBase.Eval (HappyAbsSyn a b c)} = $dEvalHappyAbsSyn0;
-instance _forall_ [a b] => {PrelBase.Eval (HappyState a b)} = $dEvalHappyState0;
-instance {PrelBase.Eval Token} = $dEvalToken0;
 instance {PrelBase.Show Token} = $dShowToken0;
 _declarations_
-1 $dEvalHappyAbsSyn0 _:_ _forall_ [a b c] => {PrelBase.Eval (HappyAbsSyn a b c)} ;;
-1 $dEvalHappyState0 _:_ _forall_ [a b] => {PrelBase.Eval (HappyState a b)} ;;
-1 $dEvalToken0 _:_ {PrelBase.Eval Token} ;;
 1 $dShowToken0 _:_ {PrelBase.Show Token} ;;
-1 action_0 _:_ _forall_ [a b] {PrelBase.Num a} => a -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn (b -> PrelBase.Double) [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> b -> PrelBase.Double) -> [HappyState Token ([HappyAbsSyn (b -> PrelBase.Double) [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> b -> PrelBase.Double)] -> [HappyAbsSyn (b -> PrelBase.Double) [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> b -> PrelBase.Double ;;
-1 action_1 _:_ _forall_ [a b c d e] {PrelBase.Num a} => a -> PrelBase.Int -> b -> HappyState b ([HappyAbsSyn e c d] -> [Token] -> e) -> [HappyState b ([HappyAbsSyn e c d] -> [Token] -> e)] -> [HappyAbsSyn e c d] -> [Token] -> e ;;
-1 action_2 _:_ _forall_ [a b c d e f g h] => a -> PrelBase.Int -> b -> c -> [HappyState b ([HappyAbsSyn (d -> PrelBase.Double) [(e, d -> f)] g] -> h)] -> [HappyAbsSyn (d -> PrelBase.Double) [(e, d -> f)] g] -> h ;;
-1 action_3 _:_ _forall_ [a b c d] {PrelBase.Num a} => a -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn c [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> d) -> [HappyState Token ([HappyAbsSyn c [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> d)] -> [HappyAbsSyn c [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> d ;;
-1 action_4 _:_ _forall_ [a b c d] {PrelBase.Num a} => a -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn c [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> d) -> [HappyState Token ([HappyAbsSyn c [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> d)] -> [HappyAbsSyn c [(PrelBase.String, b -> PrelBase.Int)] (b -> PrelBase.Int)] -> [Token] -> d ;;
-1 action_5 _:_ _forall_ [a b c d e f] => a -> PrelBase.Int -> b -> c -> [HappyState b ([HappyAbsSyn d [(PrelBase.String, e)] e] -> f)] -> [HappyAbsSyn d [(PrelBase.String, e)] e] -> f ;;
-1 action_6 _:_ _forall_ [a b c d e f g] => a -> PrelBase.Int -> b -> c -> [HappyState b ([HappyAbsSyn d e (f -> PrelBase.Int)] -> g)] -> [HappyAbsSyn d e (f -> PrelBase.Int)] -> g ;;
-1 data HappyAbsSyn t1 t2 t3 = HappyTerminal Token |  HappyErrorToken PrelBase.Int |  HappyAbsSyn1 t1 |  HappyAbsSyn2 t2 |  HappyAbsSyn3 t3 ;
-1 newtype HappyState b c = HappyState (PrelBase.Int -> PrelBase.Int -> b -> HappyState b c -> [HappyState b c] -> c) ;
+1 action_0 _:_ _forall_ [$a $b] {PrelBase.Num $a} => $a -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn ($b -> PrelBase.Double) [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $b -> PrelBase.Double) -> [HappyState Token ([HappyAbsSyn ($b -> PrelBase.Double) [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $b -> PrelBase.Double)] -> [HappyAbsSyn ($b -> PrelBase.Double) [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $b -> PrelBase.Double ;;
+1 action_1 _:_ _forall_ [$a $b $c $d $e] {PrelBase.Num $a} => $a -> PrelBase.Int -> $b -> HappyState $b ([HappyAbsSyn $e $c $d] -> [Token] -> $e) -> [HappyState $b ([HappyAbsSyn $e $c $d] -> [Token] -> $e)] -> [HappyAbsSyn $e $c $d] -> [Token] -> $e ;;
+1 action_2 _:_ _forall_ [$a $b $c $d $e $f $g $h] => $a -> PrelBase.Int -> $b -> $c -> [HappyState $b ([HappyAbsSyn ($d -> PrelBase.Double) [($e, $d -> $f)] $g] -> $h)] -> [HappyAbsSyn ($d -> PrelBase.Double) [($e, $d -> $f)] $g] -> $h ;;
+1 action_3 _:_ _forall_ [$a $b $c $d] {PrelBase.Num $a} => $a -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn $c [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $d) -> [HappyState Token ([HappyAbsSyn $c [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $d)] -> [HappyAbsSyn $c [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $d ;;
+1 action_4 _:_ _forall_ [$a $b $c $d] {PrelBase.Num $a} => $a -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn $c [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $d) -> [HappyState Token ([HappyAbsSyn $c [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $d)] -> [HappyAbsSyn $c [(PrelBase.String, $b -> PrelBase.Int)] ($b -> PrelBase.Int)] -> [Token] -> $d ;;
+1 action_5 _:_ _forall_ [$a $b $c $d $e $f] => $a -> PrelBase.Int -> $b -> $c -> [HappyState $b ([HappyAbsSyn $d [(PrelBase.String, $e)] $e] -> $f)] -> [HappyAbsSyn $d [(PrelBase.String, $e)] $e] -> $f ;;
+1 action_6 _:_ _forall_ [$a $b $c $d $e $f $g] => $a -> PrelBase.Int -> $b -> $c -> [HappyState $b ([HappyAbsSyn $d $e ($f -> PrelBase.Int)] -> $g)] -> [HappyAbsSyn $d $e ($f -> PrelBase.Int)] -> $g ;;
+1 data HappyAbsSyn $r8T $r8U $r8V = HappyTerminal Token |  HappyErrorToken PrelBase.Int |  HappyAbsSyn1 $r8T |  HappyAbsSyn2 $r8U |  HappyAbsSyn3 $r8V ;
+1 newtype HappyState $r8I $r8J = HappyState (PrelBase.Int -> PrelBase.Int -> $r8I -> HappyState $r8I $r8J -> [HappyState $r8I $r8J] -> $r8J) ;
 1 data Token = TokenInt PrelBase.Int |  TokenVar PrelBase.String |  TokenEq ;
-1 happyAccept _:_ _forall_ [a b c d e f g h] => a -> b -> c -> d -> [HappyAbsSyn e f g] -> h -> e ;;
-1 happyError _:_ _forall_ [a] => [Token] -> a ;;
-1 happyFail _:_ _forall_ [a b c d e] => PrelBase.Int -> b -> HappyState b ([HappyAbsSyn c d e] -> [Token] -> a) -> [HappyState b ([HappyAbsSyn c d e] -> [Token] -> a)] -> [HappyAbsSyn c d e] -> [Token] -> a ;;
-1 happyGoto _:_ _forall_ [a b c] => (PrelBase.Int -> PrelBase.Int -> b -> HappyState b c -> [HappyState b c] -> c) -> PrelBase.Int -> b -> a -> [HappyState b c] -> c ;;
-1 happyMonadReduce _:_ _forall_ [a b c d] => PrelBase.Int -> PrelBase.Int -> (c -> d) -> ([d] -> c) -> PrelBase.Int -> a -> HappyState a ([d] -> [Token] -> b) -> [HappyState a ([d] -> [Token] -> b)] -> [d] -> [Token] -> b ;;
-1 happyNewToken _:_ _forall_ [a b] => (PrelBase.Int -> PrelBase.Int -> Token -> HappyState Token (a -> [Token] -> b) -> [HappyState Token (a -> [Token] -> b)] -> a -> [Token] -> b) -> [HappyState Token (a -> [Token] -> b)] -> a -> [Token] -> b ;;
-1 happyParse _:_ _forall_ [a] => [Token] -> a -> PrelBase.Double ;;
-1 happyReduce _:_ _forall_ [a b c] => PrelBase.Int -> PrelBase.Int -> (c -> c) -> PrelBase.Int -> a -> HappyState a (c -> b) -> [HappyState a (c -> b)] -> c -> b ;;
-1 happyReduce_1 _:_ _forall_ [a b c d e f g] => PrelBase.Int -> a -> b -> [HappyState a ([HappyAbsSyn (e -> PrelBase.Double) [(d, e -> f)] g] -> c)] -> [HappyAbsSyn (e -> PrelBase.Double) [(d, e -> f)] g] -> c ;;
-1 happyReduce_2 _:_ _forall_ [a b c d e] => PrelBase.Int -> a -> b -> [HappyState a ([HappyAbsSyn d [(PrelBase.String, e)] e] -> c)] -> [HappyAbsSyn d [(PrelBase.String, e)] e] -> c ;;
-1 happyReduce_3 _:_ _forall_ [a b c d e f] => PrelBase.Int -> a -> b -> [HappyState a ([HappyAbsSyn d e (f -> PrelBase.Int)] -> c)] -> [HappyAbsSyn d e (f -> PrelBase.Int)] -> c ;;
-1 happyReturn _:_ _forall_ [a b] => a -> b -> a ;;
-1 happyShift _:_ _forall_ [a b c d e] {PrelBase.Num a} => (PrelBase.Int -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn c d e] -> [Token] -> b) -> [HappyState Token ([HappyAbsSyn c d e] -> [Token] -> b)] -> [HappyAbsSyn c d e] -> [Token] -> b) -> a -> Token -> HappyState Token ([HappyAbsSyn c d e] -> [Token] -> b) -> [HappyState Token ([HappyAbsSyn c d e] -> [Token] -> b)] -> [HappyAbsSyn c d e] -> [Token] -> b ;;
-1 happySpecReduce_0 _:_ _forall_ [a b c] => PrelBase.Int -> c -> PrelBase.Int -> a -> HappyState a ([c] -> [Token] -> b) -> [HappyState a ([c] -> [Token] -> b)] -> [c] -> [Token] -> b ;;
-1 happySpecReduce_1 _:_ _forall_ [a b c d] => PrelBase.Int -> (c -> c) -> PrelBase.Int -> b -> a -> [HappyState b ([c] -> d)] -> [c] -> d ;;
-1 happySpecReduce_2 _:_ _forall_ [a b c d] => PrelBase.Int -> (c -> c -> c) -> PrelBase.Int -> b -> a -> [HappyState b ([c] -> d)] -> [c] -> d ;;
-1 happySpecReduce_3 _:_ _forall_ [a b c d] => PrelBase.Int -> (c -> c -> c -> c) -> PrelBase.Int -> b -> a -> [HappyState b ([c] -> d)] -> [c] -> d ;;
-1 happyThen _:_ _forall_ [a b] => a -> (a -> b) -> b ;;
+1 happyAccept _:_ _forall_ [$a $b $c $d $e $f $g $h] => $a -> $b -> $c -> $d -> [HappyAbsSyn $e $f $g] -> $h -> $e ;;
+1 happyError _:_ _forall_ [$a] => [Token] -> $a ;;
+1 happyFail _:_ _forall_ [$a $b $c $d $e] => PrelBase.Int -> $b -> HappyState $b ([HappyAbsSyn $c $d $e] -> [Token] -> $a) -> [HappyState $b ([HappyAbsSyn $c $d $e] -> [Token] -> $a)] -> [HappyAbsSyn $c $d $e] -> [Token] -> $a ;;
+1 happyGoto _:_ _forall_ [$a $b $c] => (PrelBase.Int -> PrelBase.Int -> $b -> HappyState $b $c -> [HappyState $b $c] -> $c) -> PrelBase.Int -> $b -> $a -> [HappyState $b $c] -> $c ;;
+1 happyMonadReduce _:_ _forall_ [$a $b $c $d] => PrelBase.Int -> PrelBase.Int -> ($d -> $c) -> ([$c] -> $d) -> PrelBase.Int -> $a -> HappyState $a ([$c] -> [Token] -> $b) -> [HappyState $a ([$c] -> [Token] -> $b)] -> [$c] -> [Token] -> $b ;;
+1 happyNewToken _:_ _forall_ [$a $b] => (PrelBase.Int -> PrelBase.Int -> Token -> HappyState Token ($a -> [Token] -> $b) -> [HappyState Token ($a -> [Token] -> $b)] -> $a -> [Token] -> $b) -> [HappyState Token ($a -> [Token] -> $b)] -> $a -> [Token] -> $b ;;
+1 happyParse _:_ _forall_ [$a] => [Token] -> $a -> PrelBase.Double ;;
+1 happyReduce _:_ _forall_ [$a $b $c] => PrelBase.Int -> PrelBase.Int -> ($c -> $c) -> PrelBase.Int -> $a -> HappyState $a ($c -> $b) -> [HappyState $a ($c -> $b)] -> $c -> $b ;;
+1 happyReduce_1 _:_ _forall_ [$a $b $c $d $e $f $g] => PrelBase.Int -> $a -> $b -> [HappyState $a ([HappyAbsSyn ($e -> PrelBase.Double) [($d, $e -> $f)] $g] -> $c)] -> [HappyAbsSyn ($e -> PrelBase.Double) [($d, $e -> $f)] $g] -> $c ;;
+1 happyReduce_2 _:_ _forall_ [$a $b $c $d $e] => PrelBase.Int -> $a -> $b -> [HappyState $a ([HappyAbsSyn $d [(PrelBase.String, $e)] $e] -> $c)] -> [HappyAbsSyn $d [(PrelBase.String, $e)] $e] -> $c ;;
+1 happyReduce_3 _:_ _forall_ [$a $b $c $d $e $f] => PrelBase.Int -> $a -> $b -> [HappyState $a ([HappyAbsSyn $d $e ($f -> PrelBase.Int)] -> $c)] -> [HappyAbsSyn $d $e ($f -> PrelBase.Int)] -> $c ;;
+1 happyReturn _:_ _forall_ [$a $b] => $b -> $a -> $b ;;
+1 happyShift _:_ _forall_ [$a $b $c $d $e] {PrelBase.Num $a} => (PrelBase.Int -> PrelBase.Int -> Token -> HappyState Token ([HappyAbsSyn $c $d $e] -> [Token] -> $b) -> [HappyState Token ([HappyAbsSyn $c $d $e] -> [Token] -> $b)] -> [HappyAbsSyn $c $d $e] -> [Token] -> $b) -> $a -> Token -> HappyState Token ([HappyAbsSyn $c $d $e] -> [Token] -> $b) -> [HappyState Token ([HappyAbsSyn $c $d $e] -> [Token] -> $b)] -> [HappyAbsSyn $c $d $e] -> [Token] -> $b ;;
+1 happySpecReduce_0 _:_ _forall_ [$a $b $c] => PrelBase.Int -> $c -> PrelBase.Int -> $a -> HappyState $a ([$c] -> [Token] -> $b) -> [HappyState $a ([$c] -> [Token] -> $b)] -> [$c] -> [Token] -> $b ;;
+1 happySpecReduce_1 _:_ _forall_ [$a $b $c $d] => PrelBase.Int -> ($c -> $c) -> PrelBase.Int -> $b -> $a -> [HappyState $b ([$c] -> $d)] -> [$c] -> $d ;;
+1 happySpecReduce_2 _:_ _forall_ [$a $b $c $d] => PrelBase.Int -> ($c -> $c -> $c) -> PrelBase.Int -> $b -> $a -> [HappyState $b ([$c] -> $d)] -> [$c] -> $d ;;
+1 happySpecReduce_3 _:_ _forall_ [$a $b $c $d] => PrelBase.Int -> ($c -> $c -> $c -> $c) -> PrelBase.Int -> $b -> $a -> [HappyState $b ([$c] -> $d)] -> [$c] -> $d ;;
+1 happyThen _:_ _forall_ [$a $b] => $b -> ($b -> $a) -> $a ;;
 1 main _:_ PrelIOBase.IO PrelBase.() ;;
-1 myparser _:_ _forall_ [a] => [Token] -> a -> PrelBase.Double ;;
-1 notHappyAtAll _:_ _forall_ [a] => a ;;
+1 myparser _:_ _forall_ [$a] => [Token] -> $a -> PrelBase.Double ;;
+1 notHappyAtAll _:_ _forall_ [$a] => $a ;;
index c576bf4..e4a2017 100644 (file)
@@ -1,29 +1,30 @@
  
 Digraph.hs:19:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `v'
-       in the type `[Edge v]'
+    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]
     In an equation for function `stronglyConnComp':
        stronglyConnComp es vs
                         = snd (span_tree (new_range reversed_edges)
-                                         ([], ([]))
-                                         (snd (dfs (new_range es) ([], ([])) vs)))
+                                         ([], [])
+                                         (snd (dfs (new_range es) ([], []) vs)))
                         where
-                            span_tree r (vs, ns) [] = (vs, (ns))
+                            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
+                                      | 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)
+                                          (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]
+                            swap (x, y) = (y, x)
+                            reversed_edges :: forall v. (PrelBase.Eq v) => [Edge v]
                             reversed_edges = map swap es
 
 
index e4b4cbf..12c88e6 100644 (file)
@@ -1,12 +1,12 @@
  
 tcfail001.hs:9: Warning:
-    Duplicated class assertion `A a' in the context: (A a, A a)
+    Duplicate class assertion `A a' in the context: (A a, A a) =>
 
  
 tcfail001.hs:9:
-    Couldn't match the type `[a]' against `aqv -> aqw'
-    Expected: [a]
-    Inferred: aqv -> aqw
+    Couldn't match `[a]' against `$0 -> $1'
+       Expected type: [a]
+       Inferred type: $0 -> $1
     In an equation for function `op': op [] = []
     In the definition for method `op'
 
index 1779c2a..5fa5936 100644 (file)
@@ -1,9 +1,9 @@
  
 tcfail002.hs:4:
-    Occurs check: cannot construct the infinite type: aq7 = [aq7]
-    Expected: aq7
-    Inferred: [aq7]
-    In an equation for function `c': c z = z
+    Occurs check: cannot construct the infinite type: $0 = [$0]
+       Expected type: $0
+       Inferred type: [$0]
+    In the right-hand side of an equation for `c': z
 
 
 Compilation had errors
index 78cf032..c3bc95c 100644 (file)
@@ -1,7 +1,7 @@
  
 tcfail003.hs:3:
     No instance for `Num Char'
-       (arising from the literal `1' at tcfail003.hs:3)
+       arising from the literal `1' at tcfail003.hs:3
 
 
 Compilation had errors
index b5a525f..464687e 100644 (file)
@@ -1,9 +1,9 @@
  
 tcfail004.hs:3:
-    Couldn't match the type `(a13f, a13i)' against `(a13k, a13m, a13o)'
-    Expected: (a13e, a13h)
-    Inferred: (a13k, a13m, a13o)
-    In a pattern binding: (f, g) = (1, 2, 3)
+    Couldn't match `($0, $1)' against `($2, $3, $4)'
+       Expected type: ($0, $1)
+       Inferred type: ($2, $3, $4)
+    In the right-hand side of a pattern binding: (1, 2, 3)
 
 
 Compilation had errors
index 72c88b5..c9e6fa8 100644 (file)
@@ -1,9 +1,9 @@
  
 tcfail005.hs:3:
-    Couldn't match the type `[a12u]' against `(a12y, a12A)'
-    Expected: [a12u]
-    Inferred: (a12y, a12A)
-    In a pattern binding: (h : i) = (1, ('a'))
+    Couldn't match `[$0]' against `($1, $2)'
+       Expected type: [$0]
+       Inferred type: ($1, $2)
+    In the right-hand side of a pattern binding: (1, 'a')
 
 
 Compilation had errors
index 0a5168a..fb669e5 100644 (file)
@@ -1,7 +1,7 @@
  
 tcfail006.hs:4:
     No instance for `Num Bool'
-       (arising from the literal `1' at tcfail006.hs:4)
+       arising from the literal `1' at tcfail006.hs:4
 
 
 Compilation had errors
index 6461469..ff82761 100644 (file)
@@ -1,7 +1,7 @@
  
 tcfail007.hs:4:
     No instance for `Num Bool'
-       (arising from the literal `1' at tcfail007.hs:4)
+       arising from use of `+' at tcfail007.hs:4
 
 
 Compilation had errors
index 6d00577..8a852ef 100644 (file)
@@ -1,14 +1,12 @@
  
 tcfail008.hs:3:
-    Ambiguous type variable(s)
-    `aN4'
-       in the constraint `Num [aN4]'
+    Ambiguous type variable(s) `$0'
+       in the constraint `Num [$0]'
        arising from the literal `2' at tcfail008.hs:3
  
 tcfail008.hs:3:
-    Ambiguous type variable(s)
-    `aN4'
-       in the constraint `Num aN4'
+    Ambiguous type variable(s) `$0'
+       in the constraint `Num $0'
        arising from the literal `1' at tcfail008.hs:3
 
 
index e37fd85..de08837 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail009.hs:3:
-    Couldn't match the type `Int' against `Integer'
-    Expected: Integer
-    Inferred: Int
+    Couldn't match `Integer' against `Int'
+       Expected type: Integer
+       Inferred type: Int
     In an expression with a type signature: 2 :: Integer
 
 
index 2999251..41a77c4 100644 (file)
@@ -1,9 +1,8 @@
  
 tcfail010.hs:3:
-    Ambiguous type variable(s)
-    `aNe'
-       in the constraint `Num [aNe]'
-       arising from the literal `2' at tcfail010.hs:3
+    Ambiguous type variable(s) `$0'
+       in the constraint `Num [$0]'
+       arising from use of `+' at tcfail010.hs:3
 
 
 Compilation had errors
index 705d076..09cd1db 100644 (file)
@@ -1,9 +1,9 @@
  
 tcfail012.hs:3:
-    Couldn't match the type `Bool' against `[apR]'
-    Expected: Bool
-    Inferred: [apR]
-    In a pattern binding: True = []
+    Couldn't match `Bool' against `[$0]'
+       Expected type: Bool
+       Inferred type: [$0]
+    In the right-hand side of a pattern binding: []
 
 
 Compilation had errors
index 3da86aa..327ceec 100644 (file)
@@ -1,8 +1,9 @@
  
 tcfail013.hs:4:
-    Couldn't match the type `[aNb]' against `Bool'
-    Expected: Bool
-    Inferred: [aNb]
+    Couldn't match `[$0]' against `Bool'
+       Expected type: [$0]
+       Inferred type: Bool
+    In the pattern: True
     In an equation for function `f': f True = 2
 
 
index 3917d0e..2793d7a 100644 (file)
@@ -1,10 +1,10 @@
  
 tcfail014.hs:5:
-    Occurs check: cannot construct the infinite type: aND = aND -> aNF
-    Expected: aND
-    Inferred: aND -> aNF
+    Occurs check: cannot construct the infinite type: $0 = $0 -> $1
+       Expected type: $0
+       Inferred type: $0 -> $1
     In the first argument of `z', namely `z'
-    In an equation for function `h': h z = z z
+    In the right-hand side of an equation for `h': z z
 
 
 Compilation had errors
index 101e2f4..49fb603 100644 (file)
@@ -1,7 +1,7 @@
  
 tcfail015.hs:7:
     No instance for `Num Bool'
-       (arising from the literal `2' at tcfail015.hs:7)
+       arising from the literal `2' at tcfail015.hs:7
 
 
 Compilation had errors
index 8736b16..f27a018 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail016.hs:9:
-    Couldn't match the type `AnnExpr a12M' against `Expr a12F'
-    Expected: Expr a12M
-    Inferred: AnnExpr a12M
+    Couldn't match `Expr a' against `AnnExpr a1'
+       Expected type: Expr a1
+       Inferred type: AnnExpr a1
     In the first argument of `g', namely `e1'
     In the first argument of `++', namely `(g e1)'
 
index e8c7737..d9b50e4 100644 (file)
@@ -1,8 +1,7 @@
  
 tcfail018.hs:5:
-    Ambiguous type variable(s)
-    `aN7'
-       in the constraint `Num [aN7]'
+    Ambiguous type variable(s) `$0'
+       in the constraint `Num [$0]'
        arising from the literal `1' at tcfail018.hs:5
 
 
index 31120b0..f11ceac 100644 (file)
@@ -1,7 +1,7 @@
  
 tcfail021.hs:8:
     Can't handle multiple methods defined by one pattern binding
-       (==, /=) = (\ x -> \ y -> True, (\ x -> \ y -> False))
+       (==, /=) = (\ x -> \ y -> ..., \ x -> \ y -> ...)
 
 
 Compilation had errors
index 035355d..344d0f3 100644 (file)
@@ -4,18 +4,16 @@ tcfail023.hs:1:
        for `A B' at tcfail023.hs:14 and tcfail023.hs:11
  
 tcfail023.hs:14:
-    Couldn't match the type `B' against `Bool'
-    Expected: B
-    Inferred: Bool
-    In an equation for function `op': op C = True
-    In the definition for method `op'
+    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:
-    Couldn't match the type `B' against `Bool'
-    Expected: B
-    Inferred: Bool
-    In an equation for function `op': op C = True
-    In the definition for method `op'
+    Couldn't match `B' against `Bool'
+       Expected type: B
+       Inferred type: Bool
+    In the right-hand side of an equation for `op': True
 
 
 Compilation had errors
index c06f988..5114e9c 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail027.hs:3:
     Cycle in class declarations:
-       `A' at tcfail027.hs:4
        `B' at tcfail027.hs:7
+       `A' at tcfail027.hs:4
 
 
 Compilation had errors
index d298320..2639267 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail028.hs:4:
-    Couldn't match the kind ** against kaPY -> *
-    Expected: **
-    Found:    kaPY -> *
+    Couldn't match `*?' against `$0 -> *'
+       Expected kind: *?
+       Inferred kind: $0 -> *
     In the type `A a'
     In the data declaration for `A'
 
index b674e43..2bca84f 100644 (file)
@@ -1,7 +1,6 @@
  
 tcfail029.hs:6:
-    No instance for `Ord Foo'
-       (arising from use of `>' at tcfail029.hs:6)
+    No instance for `Ord Foo' arising from use of `>' at tcfail029.hs:6
 
 
 Compilation had errors
index 9994909..f13bfaf 100644 (file)
@@ -1,10 +1,10 @@
  
 tcfail031.hs:3:
-    Couldn't match the type `Bool' against `Char'
-    Expected: Bool
-    Inferred: Char
+    Couldn't match `Bool' against `Char'
+       Expected type: Bool
+       Inferred type: Char
     In the predicate expression: 'a'
-    In an equation for function `f': f x = if 'a' then 1 else 2
+    In the right-hand side of an equation for `f': if 'a' then 1 else 2
 
 
 Compilation had errors
index 0a2b33b..8601fba 100644 (file)
@@ -1,10 +1,12 @@
  
 tcfail032.hs:14:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `a'
-       in the type `a -> Int'
+    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
     In an expression with a type signature:
-         x :: _forall_ [a] (PrelBase.Eq a) => a -> Int
+         x :: forall a. (PrelBase.Eq a) => a -> Int
 
 
 Compilation had errors
index f2b13dc..35db1ce 100644 (file)
@@ -1,9 +1,9 @@
  
 tcfail033.hs:4:
-    Occurs check: cannot construct the infinite type: aMq = (aMq, aMt)
-    Expected: aMu (aMq, aMt)
-    Inferred: aMu aMq
-    In a pattern binding: buglet = [x | (x, y) <- buglet]
+    Occurs check: cannot construct the infinite type: $0 = ($0, $1)
+       Expected type: ($0, $1)
+       Inferred type: $0
+    In a list-comprehension qualifier: return x
 
 
 Compilation had errors
index cc383ac..aaa795f 100644 (file)
@@ -2,7 +2,7 @@
 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)
+       from the context (Num a, Eq a, test at [a])
     Probable cause: missing `Integral a' in type signature for `test'
     When checking the type signature(s) for `test'
 
index 2159b49..bb262f4 100644 (file)
@@ -53,12 +53,12 @@ tcfail036.hs:3:
        for `Num NUM' at tcfail036.hs:8 and tcfail036.hs:7
  
 tcfail036.hs:8:
-    No instance for `Eq NUM'
-       (arising from an instance declaration at tcfail036.hs:8)
+    No instance for `Show NUM'
+       arising from an instance declaration at tcfail036.hs:8
  
 tcfail036.hs:8:
-    No instance for `Show NUM'
-       (arising from an instance declaration at tcfail036.hs:8)
+    No instance for `Eq NUM'
+       arising from an instance declaration at tcfail036.hs:8
 
 
 Compilation had errors
index 6550bc2..b63b4a3 100644 (file)
@@ -1,8 +1,7 @@
  
 tcfail040.hs:19:
-    Ambiguous type variable(s)
-    `aN4'
-       in the constraint `ORD aN4'
+    Ambiguous type variable(s) `a'
+       in the constraint `ORD a'
        arising from use of `<<' at tcfail040.hs:19
 
 
index 3007968..6651435 100644 (file)
@@ -1,4 +1,17 @@
  
+tcfail044.hs:12: Warning:
+    No explicit method nor default method for `signum'
+    in an instance declaration for `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'
+
 tcfail044.hs:12:
     Illegal instance declaration for `Num (a -> a)'
        (the instance type must be of form (T a b c)
@@ -8,10 +21,6 @@ tcfail044.hs:5:
     Illegal instance declaration for `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:20:
-    No instance for `Num (Float -> Float)'
-       (arising from use of `+' at tcfail044.hs:20)
 
 
 Compilation had errors
index 9a3f3c1..017d224 100644 (file)
@@ -2,10 +2,6 @@
 tcfail045.hs:10:
     Unacceptable instance type for ccall-ish class
        class CCallable type Socket
-tcfail045.hs:13:
-    No instance for `CCallable Socket'
-       (arising from an argument in the _ccall_ to `foo', namely `x' at tcfail045.hs:13)
 
 
 Compilation had errors
index 5166568..ab6941b 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail055.hs:3:
-    Couldn't match the type `Int' against `Float'
-    Expected: Int
-    Inferred: Float
+    Couldn't match `Int' against `Float'
+       Expected type: Int
+       Inferred type: Float
     In an expression with a type signature: x + 1 :: Int
 
 
index 63e93c9..c697dd1 100644 (file)
@@ -1,7 +1,7 @@
  
 tcfail057.hs:5:
     Class used as a type constructor: RealFrac
-    In the type `_forall_ [a] => RealFrac a -> a -> a'
+    In the type `forall a. RealFrac a -> a -> a'
 
 
 Compilation had errors
index 332406a..8a9b740 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'
+    In the context `(PrelArr.Array a) =>'
+    In the type `forall a b. (PrelArr.Array a) => a -> b'
 
 
 Compilation had errors
index c2cc051..580ebf6 100644 (file)
@@ -1,9 +1,10 @@
  
 tcfail065.hs:29:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `aT2'
-       in the type `aT2 -> X x -> X x'
+    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
     In the definition for method `setX'
 
 
index fb5b59e..ccaac4a 100644 (file)
@@ -11,14 +11,14 @@ tcfail067.hs:65: Warning:
 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)
+       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'
        (arising from use of `SubRange' at tcfail067.hs:65)
-       from the context (Num (SubRange a), Num a, Eq (SubRange a), Show (SubRange a), Eval (SubRange a), Eq (SubRange a), Show (SubRange a), Eval (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)
+       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
     When checking the methods of an instance declaration
  
index 63440c2..beba5e1 100644 (file)
@@ -1,71 +1,46 @@
  
 tcfail068.hs:45:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `a1jV'
-       in the type `ST a1jV a1jR'
+    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 an equation for function `itrapstate':
-       itrapstate ((i, k), (j, l)) f c d s arr
-                  = runST (itrapstate' i k s)
-                  where
-                      itrapstatesnd i k s
-                                    = if i > j then
-                                          return (s, (arr))
-                                      else
-                                          ((readArray arr (i, (k)))
-                                           >>= (\ val
-                                                  -> let (newstate, newval) = f (c (i, (k)) s) val
-                                                     in (...) >> (...)))
-                      itrapstate' i k s
-                                  = if k > l then
-                                        return (s, (arr))
-                                    else
-                                        ((itrapstatesnd i k s)
-                                         >>= (\ (s, arr) -> itrapstate' i (k + 1) s))
+    In the right-hand side of an equation for `itrapstate':
+       runST (itrapstate' i k s)
  
 tcfail068.hs:32:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `a1mG'
-       in the type `ST a1mG a1mC'
+    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 an equation for function `itrap':
-       itrap ((i, k), (j, l)) f arr
-             = runST (itrap' i k)
-             where
-                 itrapsnd i k
-                          = if i > j then
-                                return arr
-                            else
-                                ((readArray arr (i, (k)))
-                                 >>= (\ val
-                                        -> (writeArray arr (i, (k)) (f val))
-                                           >> (itrapsnd (... + 1) k)))
-                 itrap' i k
-                        = if k > l then
-                              return arr
-                          else
-                              ((itrapsnd i k) >> (itrap' i (k + 1)))
+    In the right-hand side of an equation for `itrap':
+       runST (itrap' i k)
  
 tcfail068.hs:21:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `a1nb'
-       in the type `ST a1nb a1n1'
+    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
        `((readArray arr i)
          >>= (\ val -> (writeArray arr i (f val)) >> (return arr)))'
-    In an equation for function `itiap':
-       itiap i f arr
-             = runST ((readArray arr i)
-                      >>= (\ val -> (writeArray arr i (f val)) >> (return arr)))
+    In the right-hand side of an equation for `itiap':
+       runST ((readArray arr i)
+              >>= (\ val -> (writeArray arr i (f val)) >> (return arr)))
  
 tcfail068.hs:14:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `a1ob'
-       in the type `ST a1ob a1o7'
-    In the first argument of `runST', namely
-       `(newArray ((1, (1)), (n)) x)'
-    In an equation for function `itgen':
-       itgen n x = runST (newArray ((1, (1)), (n)) x)
+    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)
 
 
 Compilation had errors
index 2606663..e8cb82b 100644 (file)
@@ -1,10 +1,10 @@
  
 tcfail069.hs:20:
-    Couldn't match the type `[aF3]' against `(aF7, aF9)'
-    Expected: [aF3]
-    Inferred: (aF7, aF9)
-    In the scrutinee of a case expression: (list1, (list2))
-    In the case expression: case (list1, (list2)) of [] -> error "foo"
+    Couldn't match `[$0]' against `($1, $2)'
+       Expected type: [$0]
+       Inferred type: ($1, $2)
+    In the scrutinee of a case expression: (list1, list2)
+    In the case expression: case (list1, list2) of [] -> error "foo"
 
 
 Compilation had errors
index 475c96b..553969d 100644 (file)
@@ -1,8 +1,8 @@
  
 tcfail070.hs:13:
-    Couldn't match the kind * against * -> kaAD
-    Expected: *
-    Found:    * -> kaAD
+    Couldn't match `*' against `* -> $0'
+       Expected kind: *
+       Inferred kind: * -> $0
     In the type `[Int] Bool'
     In the type declaration for `State'
 
index de77b0c..ef059b3 100644 (file)
@@ -1,9 +1,10 @@
  
 tcfail071.hs:8:
-    Type signature doesn't match inferred type
-       Signature: c -> c
-       Inferred : (aNf -> [aNd] -> [aNd]) -> aNf -> [aNd] -> [aNd]
+    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]
 
 
 Compilation had errors
index c8a7b6f..53d3071 100644 (file)
@@ -1,14 +1,12 @@
  
 tcfail072.hs:23:
-    Ambiguous type variable(s)
-    `aNk'
-       in the constraint `Ord aNk'
+    Ambiguous type variable(s) `p'
+       in the constraint `Ord p'
        arising from use of `g' at tcfail072.hs:23
  
 tcfail072.hs:23:
-    Ambiguous type variable(s)
-    `aNn'
-       in the constraint `Ord aNn'
+    Ambiguous type variable(s) `q'
+       in the constraint `Ord q'
        arising from use of `g' at tcfail072.hs:23
 
 
index e7f448f..b02320d 100644 (file)
@@ -1,12 +1,12 @@
  
 tcfail073.hs:3:
     Duplicate or overlapping instance declarations
-       for `Eq (a, b)' at PrelTup.hi:11 and tcfail073.hs:8
+       for `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))
+       from the context (Eq (a, b), /= at [(a, b)], == at [(a, b)])
     Probable cause: missing `Eq a' in instance declaration context
     When checking the methods of an instance declaration
 
index 262b79f..7d8f136 100644 (file)
@@ -11,9 +11,7 @@ Needless to say that it uses some of GHC's arcane type extensions.
 
 module ShouldFail where
 
-import GlaExts ( All )
-
-data ContT m a         =  KContT ((All res) => (a -> m res) -> m res)
+data ContT m a         =  KContT (forall res. (a -> m res) -> m res)
 unKContT (KContT x)    =  x
 
 callcc                 :: ((a -> ContT m b) -> ContT m a) -> ContT m a
index 7fd5f0c..fa09963 100644 (file)
@@ -1,13 +1,13 @@
  
-tcfail076.hs:20:
-    A type signature is more polymorphic than the inferred type
-       Can't for-all the type variable(s) `aO3'
-       in the type `(aNZ -> aNX aO3) -> aNX aO3'
+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
     In the first argument of `KContT', namely `(\ cont' -> cont a)'
-    In the first argument of `f', namely
-       `(\ a -> KContT (\ cont' -> cont a))'
-    In the first argument of `unKContT', namely
-       `(f (\ a -> KContT (\ cont' -> cont a)))'
+    In the right-hand side of a lambda abstraction:
+       KContT (\ cont' -> cont a)
 
 
 Compilation had errors
index 5909239..ed2c64a 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'
+    In the context `(Integer i) =>'
+    In the type `forall i. (Integer i) => i'
 
 
 Compilation had errors
index 3096a5e..8a336d9 100644 (file)
@@ -1,9 +1,8 @@
  
 tcfail080.hs:11:
-    Ambiguous type variable(s)
-    `ar9'
-       in the constraint `Collection ar9 arc'
-       arising from use of `singleton' at tcfail080.hs:11
+    Ambiguous type variable(s) `c'
+       in the constraint `Collection c a'
+       arising from use of `isempty' at tcfail080.hs:11
 
 
 Compilation had errors
index 0c511f6..3e27872 100644 (file)
@@ -7,7 +7,7 @@ module Main where
 import System(getArgs)
 import PrelIOBase
 
-sfoldl :: Eval a => (a -> Int -> a) -> a -> [Int] -> a
+sfoldl :: (a -> Int -> a) -> a -> [Int] -> a
 sfoldl f z [] = z
 sfoldl f z (x:xs) = _scc_ "sfoldl1" (sfoldl f fzx (fzx `seq` xs))
                   where fzx = _scc_ "fzx" (f z x)