From dbf71170c5a24389293e15a06f2606b23207c0fd Mon Sep 17 00:00:00 2001 From: simonm <unknown> Date: Mon, 16 Nov 1998 18:15:57 +0000 Subject: [PATCH] [project @ 1998-11-16 18:14:44 by simonm] update tests for 4.00 --- ghc/tests/array/should_run/arr003.stderr | 2 +- ghc/tests/array/should_run/arr004.stderr | 2 +- ghc/tests/array/should_run/arr007.stderr | 2 +- ghc/tests/array/should_run/arr008.stderr | 2 +- ghc/tests/ccall/should_fail/cc001.stderr | 5 +- ghc/tests/ccall/should_fail/cc002.stderr | 10 +-- ghc/tests/ccall/should_fail/cc004.stderr | 4 +- ghc/tests/codeGen/should_run/cg016.stderr | 12 +-- ghc/tests/codeGen/should_run/cg025.hs | 2 +- ghc/tests/codeGen/should_run/cg025.stderr | 3 +- ghc/tests/codeGen/should_run/cg026.stdout | 4 +- ghc/tests/deSugar/should_compile/ds003.stderr | 2 +- ghc/tests/deSugar/should_compile/ds020.stderr | 4 +- ghc/tests/deSugar/should_compile/ds034.stderr | 1 + ghc/tests/deSugar/should_run/dsrun001.stdout | 2 +- ghc/tests/deSugar/should_run/dsrun005.stderr | 2 +- .../deriving/should_compile/drv006.stderr | 1 + .../deriving/should_compile/drv007.stderr | 1 + ghc/tests/rename/should_compile/Int10.hi | 4 +- ghc/tests/rename/should_compile/Rn016.hi | 4 +- ghc/tests/rename/should_compile/Rn017.hi | 4 +- ghc/tests/rename/should_compile/rn017.stderr | 20 +++++ ghc/tests/rename/should_fail/rnfail014.stderr | 32 +++++-- .../stranal/should_compile/str001.stderr | 4 +- ghc/tests/typecheck/should_compile/Makefile | 1 + .../typecheck/should_compile/TheUtils.hi | 2 +- .../typecheck/should_compile/tc001.stderr | 2 +- .../typecheck/should_compile/tc005.stderr | 2 +- .../typecheck/should_compile/tc008.stderr | 2 +- .../typecheck/should_compile/tc009.stderr | 2 +- .../typecheck/should_compile/tc011.stderr | 2 +- .../typecheck/should_compile/tc012.stderr | 2 +- .../typecheck/should_compile/tc015.stderr | 2 +- .../typecheck/should_compile/tc016.stderr | 2 +- .../typecheck/should_compile/tc020.stderr | 2 +- .../typecheck/should_compile/tc021.stderr | 6 +- .../typecheck/should_compile/tc022.stderr | 4 +- .../typecheck/should_compile/tc023.stderr | 6 +- .../typecheck/should_compile/tc024.stderr | 6 +- .../typecheck/should_compile/tc026.stderr | 2 +- .../typecheck/should_compile/tc027.stderr | 6 +- .../typecheck/should_compile/tc029.stderr | 5 +- .../typecheck/should_compile/tc031.stderr | 5 +- .../typecheck/should_compile/tc032.stderr | 7 +- .../typecheck/should_compile/tc033.stderr | 7 +- .../typecheck/should_compile/tc034.stderr | 9 +- .../typecheck/should_compile/tc035.stderr | 11 +-- .../typecheck/should_compile/tc036.stderr | 4 +- .../typecheck/should_compile/tc037.stderr | 8 +- .../typecheck/should_compile/tc038.stderr | 2 +- .../typecheck/should_compile/tc039.stderr | 4 +- .../typecheck/should_compile/tc040.stderr | 2 +- .../typecheck/should_compile/tc041.stderr | 4 +- .../typecheck/should_compile/tc042.stderr | 33 +++---- .../typecheck/should_compile/tc043.stderr | 12 +-- .../typecheck/should_compile/tc044.stderr | 2 +- .../typecheck/should_compile/tc045.stderr | 14 +-- .../typecheck/should_compile/tc046.stderr | 6 +- .../typecheck/should_compile/tc047.stderr | 8 +- .../typecheck/should_compile/tc048.stderr | 23 ++--- .../typecheck/should_compile/tc049.stderr | 12 +-- .../typecheck/should_compile/tc050.stderr | 8 +- .../typecheck/should_compile/tc051.stderr | 10 +-- .../typecheck/should_compile/tc052.stderr | 4 +- .../typecheck/should_compile/tc053.stderr | 10 +-- .../typecheck/should_compile/tc054.stderr | 8 +- .../typecheck/should_compile/tc055.stderr | 6 +- .../typecheck/should_compile/tc056.stderr | 14 +-- .../typecheck/should_compile/tc057.stderr | 10 +-- .../typecheck/should_compile/tc058.stderr | 12 +-- .../typecheck/should_compile/tc059.stderr | 10 +-- .../typecheck/should_compile/tc060.stderr | 8 +- .../typecheck/should_compile/tc061.stderr | 8 +- .../typecheck/should_compile/tc062.stderr | 10 +-- .../typecheck/should_compile/tc063.stderr | 14 ++- .../typecheck/should_compile/tc064.stderr | 5 +- .../typecheck/should_compile/tc066.stderr | 9 +- .../typecheck/should_compile/tc067.stderr | 2 +- .../typecheck/should_compile/tc068.stderr | 18 ++-- .../typecheck/should_compile/tc070.stderr | 5 +- .../typecheck/should_compile/tc073.stderr | 2 +- .../typecheck/should_compile/tc074.stderr | 18 ++-- .../typecheck/should_compile/tc077.stderr | 9 +- .../typecheck/should_compile/tc078.stderr | 14 ++- .../typecheck/should_compile/tc079.stderr | 12 +-- .../typecheck/should_compile/tc080.stderr | 18 ++-- .../typecheck/should_compile/tc081.stderr | 6 +- .../typecheck/should_compile/tc082.stderr | 12 ++- .../typecheck/should_compile/tc084.stderr | 6 +- .../typecheck/should_compile/tc085.stderr | 12 +-- .../typecheck/should_compile/tc086.stderr | 10 +-- ghc/tests/typecheck/should_compile/tc087.hs | 2 +- .../typecheck/should_compile/tc087.stderr | 21 ++--- .../typecheck/should_compile/tc088.stderr | 8 +- .../typecheck/should_compile/tc089.stderr | 68 +++++++-------- .../typecheck/should_compile/tc090.stderr | 4 +- .../typecheck/should_compile/tc091.stderr | 6 +- .../typecheck/should_compile/tc092.stderr | 9 +- .../typecheck/should_compile/tc093.stderr | 20 ++--- .../typecheck/should_compile/tc095.stderr | 69 +++++++-------- .../typecheck/should_fail/Digraph.stderr | 23 ++--- .../typecheck/should_fail/tcfail001.stderr | 8 +- .../typecheck/should_fail/tcfail002.stderr | 8 +- .../typecheck/should_fail/tcfail003.stderr | 2 +- .../typecheck/should_fail/tcfail004.stderr | 8 +- .../typecheck/should_fail/tcfail005.stderr | 8 +- .../typecheck/should_fail/tcfail006.stderr | 2 +- .../typecheck/should_fail/tcfail007.stderr | 2 +- .../typecheck/should_fail/tcfail008.stderr | 10 +-- .../typecheck/should_fail/tcfail009.stderr | 6 +- .../typecheck/should_fail/tcfail010.stderr | 7 +- .../typecheck/should_fail/tcfail012.stderr | 8 +- .../typecheck/should_fail/tcfail013.stderr | 7 +- .../typecheck/should_fail/tcfail014.stderr | 8 +- .../typecheck/should_fail/tcfail015.stderr | 2 +- .../typecheck/should_fail/tcfail016.stderr | 6 +- .../typecheck/should_fail/tcfail018.stderr | 5 +- .../typecheck/should_fail/tcfail021.stderr | 2 +- .../typecheck/should_fail/tcfail023.stderr | 18 ++-- .../typecheck/should_fail/tcfail027.stderr | 2 +- .../typecheck/should_fail/tcfail028.stderr | 6 +- .../typecheck/should_fail/tcfail029.stderr | 3 +- .../typecheck/should_fail/tcfail031.stderr | 8 +- .../typecheck/should_fail/tcfail032.stderr | 10 ++- .../typecheck/should_fail/tcfail033.stderr | 8 +- .../typecheck/should_fail/tcfail034.stderr | 2 +- .../typecheck/should_fail/tcfail036.stderr | 8 +- .../typecheck/should_fail/tcfail040.stderr | 5 +- .../typecheck/should_fail/tcfail044.stderr | 17 +++- .../typecheck/should_fail/tcfail045.stderr | 4 - .../typecheck/should_fail/tcfail055.stderr | 6 +- .../typecheck/should_fail/tcfail057.stderr | 2 +- .../typecheck/should_fail/tcfail058.stderr | 4 +- .../typecheck/should_fail/tcfail065.stderr | 7 +- .../typecheck/should_fail/tcfail067.stderr | 4 +- .../typecheck/should_fail/tcfail068.stderr | 85 +++++++------------ .../typecheck/should_fail/tcfail069.stderr | 10 +-- .../typecheck/should_fail/tcfail070.stderr | 6 +- .../typecheck/should_fail/tcfail071.stderr | 7 +- .../typecheck/should_fail/tcfail072.stderr | 10 +-- .../typecheck/should_fail/tcfail073.stderr | 4 +- ghc/tests/typecheck/should_fail/tcfail076.hs | 4 +- .../typecheck/should_fail/tcfail076.stderr | 16 ++-- .../typecheck/should_fail/tcfail078.stderr | 4 +- .../typecheck/should_fail/tcfail080.stderr | 7 +- ghc/tests/typecheck/should_run/tcrun002.hs | 2 +- 146 files changed, 575 insertions(+), 671 deletions(-) diff --git a/ghc/tests/array/should_run/arr003.stderr b/ghc/tests/array/should_run/arr003.stderr index a3f331b3dfff..8573ab8cd19f 100644 --- a/ghc/tests/array/should_run/arr003.stderr +++ b/ghc/tests/array/should_run/arr003.stderr @@ -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)) diff --git a/ghc/tests/array/should_run/arr004.stderr b/ghc/tests/array/should_run/arr004.stderr index b39ffa0205c1..a2cdf2367b04 100644 --- a/ghc/tests/array/should_run/arr004.stderr +++ b/ghc/tests/array/should_run/arr004.stderr @@ -1,2 +1,2 @@ -Fail: (Array.!): undefined array element \ No newline at end of file +Fail: (Array.!): undefined array element diff --git a/ghc/tests/array/should_run/arr007.stderr b/ghc/tests/array/should_run/arr007.stderr index 2cf885997523..1850563dc55d 100644 --- a/ghc/tests/array/should_run/arr007.stderr +++ b/ghc/tests/array/should_run/arr007.stderr @@ -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)) diff --git a/ghc/tests/array/should_run/arr008.stderr b/ghc/tests/array/should_run/arr008.stderr index 8da40d26cfb8..42ab1caa4683 100644 --- a/ghc/tests/array/should_run/arr008.stderr +++ b/ghc/tests/array/should_run/arr008.stderr @@ -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)) diff --git a/ghc/tests/ccall/should_fail/cc001.stderr b/ghc/tests/ccall/should_fail/cc001.stderr index b31426c83101..dfeb20ac6d1b 100644 --- a/ghc/tests/ccall/should_fail/cc001.stderr +++ b/ghc/tests/ccall/should_fail/cc001.stderr @@ -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 diff --git a/ghc/tests/ccall/should_fail/cc002.stderr b/ghc/tests/ccall/should_fail/cc002.stderr index de8014b61e50..4157c7ec8df8 100644 --- a/ghc/tests/ccall/should_fail/cc002.stderr +++ b/ghc/tests/ccall/should_fail/cc002.stderr @@ -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 diff --git a/ghc/tests/ccall/should_fail/cc004.stderr b/ghc/tests/ccall/should_fail/cc004.stderr index d9a4ae720758..317374018e30 100644 --- a/ghc/tests/ccall/should_fail/cc004.stderr +++ b/ghc/tests/ccall/should_fail/cc004.stderr @@ -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 diff --git a/ghc/tests/codeGen/should_run/cg016.stderr b/ghc/tests/codeGen/should_run/cg016.stderr index 8a4e21146a4a..2d16aa5acd76 100644 --- a/ghc/tests/codeGen/should_run/cg016.stderr +++ b/ghc/tests/codeGen/should_run/cg016.stderr @@ -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 diff --git a/ghc/tests/codeGen/should_run/cg025.hs b/ghc/tests/codeGen/should_run/cg025.hs index 618e3b14c2e6..97b7b21be057 100644 --- a/ghc/tests/codeGen/should_run/cg025.hs +++ b/ghc/tests/codeGen/should_run/cg025.hs @@ -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") diff --git a/ghc/tests/codeGen/should_run/cg025.stderr b/ghc/tests/codeGen/should_run/cg025.stderr index 063a689ed29e..69312f2e8264 100644 --- a/ghc/tests/codeGen/should_run/cg025.stderr +++ b/ghc/tests/codeGen/should_run/cg025.stderr @@ -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 diff --git a/ghc/tests/codeGen/should_run/cg026.stdout b/ghc/tests/codeGen/should_run/cg026.stdout index 87dcba477807..11104a9fd8f3 100644 --- a/ghc/tests/codeGen/should_run/cg026.stdout +++ b/ghc/tests/codeGen/should_run/cg026.stdout @@ -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 diff --git a/ghc/tests/deSugar/should_compile/ds003.stderr b/ghc/tests/deSugar/should_compile/ds003.stderr index 1ad474682daa..3b040b67fa12 100644 --- a/ghc/tests/deSugar/should_compile/ds003.stderr +++ b/ghc/tests/deSugar/should_compile/ds003.stderr @@ -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 = ... diff --git a/ghc/tests/deSugar/should_compile/ds020.stderr b/ghc/tests/deSugar/should_compile/ds020.stderr index e4ee602d2f7b..e1d1baece937 100644 --- a/ghc/tests/deSugar/should_compile/ds020.stderr +++ b/ghc/tests/deSugar/should_compile/ds020.stderr @@ -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. diff --git a/ghc/tests/deSugar/should_compile/ds034.stderr b/ghc/tests/deSugar/should_compile/ds034.stderr index e69de29bb2d1..0af03cd0f96c 100644 --- a/ghc/tests/deSugar/should_compile/ds034.stderr +++ b/ghc/tests/deSugar/should_compile/ds034.stderr @@ -0,0 +1 @@ +NOTE: Simplifier still going after 4 iterations; baling out. diff --git a/ghc/tests/deSugar/should_run/dsrun001.stdout b/ghc/tests/deSugar/should_run/dsrun001.stdout index 130e6b0b7d4c..a375d0fe244e 100644 --- a/ghc/tests/deSugar/should_run/dsrun001.stdout +++ b/ghc/tests/deSugar/should_run/dsrun001.stdout @@ -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)] diff --git a/ghc/tests/deSugar/should_run/dsrun005.stderr b/ghc/tests/deSugar/should_run/dsrun005.stderr index cda0dfc2ebda..f266a5a561dc 100644 --- a/ghc/tests/deSugar/should_run/dsrun005.stderr +++ b/ghc/tests/deSugar/should_run/dsrun005.stderr @@ -1,2 +1,2 @@ +dsrun005.hs:42: Non-exhaustive patterns in function f -Fail: dsrun005.hs:42: Non-exhaustive patterns in function f diff --git a/ghc/tests/deriving/should_compile/drv006.stderr b/ghc/tests/deriving/should_compile/drv006.stderr index e69de29bb2d1..0af03cd0f96c 100644 --- a/ghc/tests/deriving/should_compile/drv006.stderr +++ b/ghc/tests/deriving/should_compile/drv006.stderr @@ -0,0 +1 @@ +NOTE: Simplifier still going after 4 iterations; baling out. diff --git a/ghc/tests/deriving/should_compile/drv007.stderr b/ghc/tests/deriving/should_compile/drv007.stderr index e69de29bb2d1..0af03cd0f96c 100644 --- a/ghc/tests/deriving/should_compile/drv007.stderr +++ b/ghc/tests/deriving/should_compile/drv007.stderr @@ -0,0 +1 @@ +NOTE: Simplifier still going after 4 iterations; baling out. diff --git a/ghc/tests/rename/should_compile/Int10.hi b/ghc/tests/rename/should_compile/Int10.hi index 09086e6a5957..335754f54c5a 100644 --- a/ghc/tests/rename/should_compile/Int10.hi +++ b/ghc/tests/rename/should_compile/Int10.hi @@ -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 ; diff --git a/ghc/tests/rename/should_compile/Rn016.hi b/ghc/tests/rename/should_compile/Rn016.hi index 0cbcd0b248ab..fdf2ca04def0 100644 --- a/ghc/tests/rename/should_compile/Rn016.hi +++ b/ghc/tests/rename/should_compile/Rn016.hi @@ -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; diff --git a/ghc/tests/rename/should_compile/Rn017.hi b/ghc/tests/rename/should_compile/Rn017.hi index c3a637c35cde..b61877491a14 100644 --- a/ghc/tests/rename/should_compile/Rn017.hi +++ b/ghc/tests/rename/should_compile/Rn017.hi @@ -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 ; diff --git a/ghc/tests/rename/should_compile/rn017.stderr b/ghc/tests/rename/should_compile/rn017.stderr index e69de29bb2d1..6a7ad6952aa1 100644 --- a/ghc/tests/rename/should_compile/rn017.stderr +++ b/ghc/tests/rename/should_compile/rn017.stderr @@ -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 ;; diff --git a/ghc/tests/rename/should_fail/rnfail014.stderr b/ghc/tests/rename/should_fail/rnfail014.stderr index 457ba99e4d83..8e2bef9ef364 100644 --- a/ghc/tests/rename/should_fail/rnfail014.stderr +++ b/ghc/tests/rename/should_fail/rnfail014.stderr @@ -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 diff --git a/ghc/tests/stranal/should_compile/str001.stderr b/ghc/tests/stranal/should_compile/str001.stderr index 41128849ae18..7fd86165590e 100644 --- a/ghc/tests/stranal/should_compile/str001.stderr +++ b/ghc/tests/stranal/should_compile/str001.stderr @@ -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}; diff --git a/ghc/tests/typecheck/should_compile/Makefile b/ghc/tests/typecheck/should_compile/Makefile index 5a7d114a2a40..40612f9db893 100644 --- a/ghc/tests/typecheck/should_compile/Makefile +++ b/ghc/tests/typecheck/should_compile/Makefile @@ -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... diff --git a/ghc/tests/typecheck/should_compile/TheUtils.hi b/ghc/tests/typecheck/should_compile/TheUtils.hi index 207cce101dea..a0f21b12f325 100644 --- a/ghc/tests/typecheck/should_compile/TheUtils.hi +++ b/ghc/tests/typecheck/should_compile/TheUtils.hi @@ -1,4 +1,4 @@ -_interface_ TheUtils 2 302 +_interface_ TheUtils 2 400 _instance_modules_ PrelArr IO PrelNum _usages_ diff --git a/ghc/tests/typecheck/should_compile/tc001.stderr b/ghc/tests/typecheck/should_compile/tc001.stderr index 2c8604234854..16f2f54570e5 100644 --- a/ghc/tests/typecheck/should_compile/tc001.stderr +++ b/ghc/tests/typecheck/should_compile/tc001.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc005.stderr b/ghc/tests/typecheck/should_compile/tc005.stderr index 40839ad86c6f..460d320c823b 100644 --- a/ghc/tests/typecheck/should_compile/tc005.stderr +++ b/ghc/tests/typecheck/should_compile/tc005.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc008.stderr b/ghc/tests/typecheck/should_compile/tc008.stderr index de21ecf2b18b..4f8abeb58d4a 100644 --- a/ghc/tests/typecheck/should_compile/tc008.stderr +++ b/ghc/tests/typecheck/should_compile/tc008.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc009.stderr b/ghc/tests/typecheck/should_compile/tc009.stderr index 798cdd0e7903..2cfaf7e550e4 100644 --- a/ghc/tests/typecheck/should_compile/tc009.stderr +++ b/ghc/tests/typecheck/should_compile/tc009.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc011.stderr b/ghc/tests/typecheck/should_compile/tc011.stderr index 221865a2fb3f..37537b1b20d3 100644 --- a/ghc/tests/typecheck/should_compile/tc011.stderr +++ b/ghc/tests/typecheck/should_compile/tc011.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc012.stderr b/ghc/tests/typecheck/should_compile/tc012.stderr index f7f32bc52f9f..34a14d00653f 100644 --- a/ghc/tests/typecheck/should_compile/tc012.stderr +++ b/ghc/tests/typecheck/should_compile/tc012.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc015.stderr b/ghc/tests/typecheck/should_compile/tc015.stderr index e63a8cf16974..c010997fcc1a 100644 --- a/ghc/tests/typecheck/should_compile/tc015.stderr +++ b/ghc/tests/typecheck/should_compile/tc015.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc016.stderr b/ghc/tests/typecheck/should_compile/tc016.stderr index 4bebb9c94617..ed5d48f0407b 100644 --- a/ghc/tests/typecheck/should_compile/tc016.stderr +++ b/ghc/tests/typecheck/should_compile/tc016.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc020.stderr b/ghc/tests/typecheck/should_compile/tc020.stderr index f461f84b90d5..a2ccf24e8a48 100644 --- a/ghc/tests/typecheck/should_compile/tc020.stderr +++ b/ghc/tests/typecheck/should_compile/tc020.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc021.stderr b/ghc/tests/typecheck/should_compile/tc021.stderr index 92ddc200f313..004a98a66994 100644 --- a/ghc/tests/typecheck/should_compile/tc021.stderr +++ b/ghc/tests/typecheck/should_compile/tc021.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc022.stderr b/ghc/tests/typecheck/should_compile/tc022.stderr index aebfbac24768..45cd09e7b40b 100644 --- a/ghc/tests/typecheck/should_compile/tc022.stderr +++ b/ghc/tests/typecheck/should_compile/tc022.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc023.stderr b/ghc/tests/typecheck/should_compile/tc023.stderr index ee47e923e6fd..db99b117662e 100644 --- a/ghc/tests/typecheck/should_compile/tc023.stderr +++ b/ghc/tests/typecheck/should_compile/tc023.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc024.stderr b/ghc/tests/typecheck/should_compile/tc024.stderr index ee47e923e6fd..db99b117662e 100644 --- a/ghc/tests/typecheck/should_compile/tc024.stderr +++ b/ghc/tests/typecheck/should_compile/tc024.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc026.stderr b/ghc/tests/typecheck/should_compile/tc026.stderr index 70334631bab2..a8bc39519d08 100644 --- a/ghc/tests/typecheck/should_compile/tc026.stderr +++ b/ghc/tests/typecheck/should_compile/tc026.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc027.stderr b/ghc/tests/typecheck/should_compile/tc027.stderr index 0e2072ce8b0f..2061985cdc13 100644 --- a/ghc/tests/typecheck/should_compile/tc027.stderr +++ b/ghc/tests/typecheck/should_compile/tc027.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc029.stderr b/ghc/tests/typecheck/should_compile/tc029.stderr index 4b707052e6b9..d16a48a9f485 100644 --- a/ghc/tests/typecheck/should_compile/tc029.stderr +++ b/ghc/tests/typecheck/should_compile/tc029.stderr @@ -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] ; diff --git a/ghc/tests/typecheck/should_compile/tc031.stderr b/ghc/tests/typecheck/should_compile/tc031.stderr index 33aa884a6f60..02aaf35de9f6 100644 --- a/ghc/tests/typecheck/should_compile/tc031.stderr +++ b/ghc/tests/typecheck/should_compile/tc031.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc032.stderr b/ghc/tests/typecheck/should_compile/tc032.stderr index 77f034b126d4..29aa472f2583 100644 --- a/ghc/tests/typecheck/should_compile/tc032.stderr +++ b/ghc/tests/typecheck/should_compile/tc032.stderr @@ -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) ; diff --git a/ghc/tests/typecheck/should_compile/tc033.stderr b/ghc/tests/typecheck/should_compile/tc033.stderr index 59e7b1b7a2d6..6391216367d2 100644 --- a/ghc/tests/typecheck/should_compile/tc033.stderr +++ b/ghc/tests/typecheck/should_compile/tc033.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc034.stderr b/ghc/tests/typecheck/should_compile/tc034.stderr index 17c9de227111..faa34048ea33 100644 --- a/ghc/tests/typecheck/should_compile/tc034.stderr +++ b/ghc/tests/typecheck/should_compile/tc034.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc035.stderr b/ghc/tests/typecheck/should_compile/tc035.stderr index 3e8b793ff3ce..c3ed0420bc11 100644 --- a/ghc/tests/typecheck/should_compile/tc035.stderr +++ b/ghc/tests/typecheck/should_compile/tc035.stderr @@ -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) ; diff --git a/ghc/tests/typecheck/should_compile/tc036.stderr b/ghc/tests/typecheck/should_compile/tc036.stderr index 257bfbd0577e..633196f8e051 100644 --- a/ghc/tests/typecheck/should_compile/tc036.stderr +++ b/ghc/tests/typecheck/should_compile/tc036.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc037.stderr b/ghc/tests/typecheck/should_compile/tc037.stderr index f74fa02baee1..f9130c8691b5 100644 --- a/ghc/tests/typecheck/should_compile/tc037.stderr +++ b/ghc/tests/typecheck/should_compile/tc037.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc038.stderr b/ghc/tests/typecheck/should_compile/tc038.stderr index 9f9f69f0044c..86ef92b08148 100644 --- a/ghc/tests/typecheck/should_compile/tc038.stderr +++ b/ghc/tests/typecheck/should_compile/tc038.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc039.stderr b/ghc/tests/typecheck/should_compile/tc039.stderr index 257bfbd0577e..633196f8e051 100644 --- a/ghc/tests/typecheck/should_compile/tc039.stderr +++ b/ghc/tests/typecheck/should_compile/tc039.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc040.stderr b/ghc/tests/typecheck/should_compile/tc040.stderr index f152e887a448..c5b8a06f9154 100644 --- a/ghc/tests/typecheck/should_compile/tc040.stderr +++ b/ghc/tests/typecheck/should_compile/tc040.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc041.stderr b/ghc/tests/typecheck/should_compile/tc041.stderr index 5dbc6f6d4b76..5f0b57b00661 100644 --- a/ghc/tests/typecheck/should_compile/tc041.stderr +++ b/ghc/tests/typecheck/should_compile/tc041.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc042.stderr b/ghc/tests/typecheck/should_compile/tc042.stderr index 16b34840f668..b27ae358c19c 100644 --- a/ghc/tests/typecheck/should_compile/tc042.stderr +++ b/ghc/tests/typecheck/should_compile/tc042.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc043.stderr b/ghc/tests/typecheck/should_compile/tc043.stderr index afcc264ed8f3..f85d585b9f86 100644 --- a/ghc/tests/typecheck/should_compile/tc043.stderr +++ b/ghc/tests/typecheck/should_compile/tc043.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc044.stderr b/ghc/tests/typecheck/should_compile/tc044.stderr index 8999dbf5e57a..0c66ee750dcb 100644 --- a/ghc/tests/typecheck/should_compile/tc044.stderr +++ b/ghc/tests/typecheck/should_compile/tc044.stderr @@ -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.() ;; diff --git a/ghc/tests/typecheck/should_compile/tc045.stderr b/ghc/tests/typecheck/should_compile/tc045.stderr index 6dfe21e0909d..e24e4f690346 100644 --- a/ghc/tests/typecheck/should_compile/tc045.stderr +++ b/ghc/tests/typecheck/should_compile/tc045.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc046.stderr b/ghc/tests/typecheck/should_compile/tc046.stderr index ae045aa98675..63621c0c6fbb 100644 --- a/ghc/tests/typecheck/should_compile/tc046.stderr +++ b/ghc/tests/typecheck/should_compile/tc046.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc047.stderr b/ghc/tests/typecheck/should_compile/tc047.stderr index 4fa71f47439b..512ff5c0e57d 100644 --- a/ghc/tests/typecheck/should_compile/tc047.stderr +++ b/ghc/tests/typecheck/should_compile/tc047.stderr @@ -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] ; diff --git a/ghc/tests/typecheck/should_compile/tc048.stderr b/ghc/tests/typecheck/should_compile/tc048.stderr index 400bbf56a5e0..173db16e76de 100644 --- a/ghc/tests/typecheck/should_compile/tc048.stderr +++ b/ghc/tests/typecheck/should_compile/tc048.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc049.stderr b/ghc/tests/typecheck/should_compile/tc049.stderr index 5e77c6db5c13..eb84e6185656 100644 --- a/ghc/tests/typecheck/should_compile/tc049.stderr +++ b/ghc/tests/typecheck/should_compile/tc049.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc050.stderr b/ghc/tests/typecheck/should_compile/tc050.stderr index 6958c61a9e93..babed2ca12ba 100644 --- a/ghc/tests/typecheck/should_compile/tc050.stderr +++ b/ghc/tests/typecheck/should_compile/tc050.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc051.stderr b/ghc/tests/typecheck/should_compile/tc051.stderr index eb4745fbda5c..711eb2043977 100644 --- a/ghc/tests/typecheck/should_compile/tc051.stderr +++ b/ghc/tests/typecheck/should_compile/tc051.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc052.stderr b/ghc/tests/typecheck/should_compile/tc052.stderr index 69084badeece..baee0183ce3a 100644 --- a/ghc/tests/typecheck/should_compile/tc052.stderr +++ b/ghc/tests/typecheck/should_compile/tc052.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc053.stderr b/ghc/tests/typecheck/should_compile/tc053.stderr index 4ca8186e3dd2..72d70c03d3ae 100644 --- a/ghc/tests/typecheck/should_compile/tc053.stderr +++ b/ghc/tests/typecheck/should_compile/tc053.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc054.stderr b/ghc/tests/typecheck/should_compile/tc054.stderr index 7139413685c8..334bd7f55f05 100644 --- a/ghc/tests/typecheck/should_compile/tc054.stderr +++ b/ghc/tests/typecheck/should_compile/tc054.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc055.stderr b/ghc/tests/typecheck/should_compile/tc055.stderr index 2dfd583cdee7..945f274f122c 100644 --- a/ghc/tests/typecheck/should_compile/tc055.stderr +++ b/ghc/tests/typecheck/should_compile/tc055.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc056.stderr b/ghc/tests/typecheck/should_compile/tc056.stderr index ca654bb1ec4a..f9b1457b7db4 100644 --- a/ghc/tests/typecheck/should_compile/tc056.stderr +++ b/ghc/tests/typecheck/should_compile/tc056.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc057.stderr b/ghc/tests/typecheck/should_compile/tc057.stderr index 1afaa8040180..5a233330bc86 100644 --- a/ghc/tests/typecheck/should_compile/tc057.stderr +++ b/ghc/tests/typecheck/should_compile/tc057.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc058.stderr b/ghc/tests/typecheck/should_compile/tc058.stderr index 2b8ad2783dbd..a4b2af23408e 100644 --- a/ghc/tests/typecheck/should_compile/tc058.stderr +++ b/ghc/tests/typecheck/should_compile/tc058.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc059.stderr b/ghc/tests/typecheck/should_compile/tc059.stderr index 2e3350bb2882..fdac88b062fb 100644 --- a/ghc/tests/typecheck/should_compile/tc059.stderr +++ b/ghc/tests/typecheck/should_compile/tc059.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc060.stderr b/ghc/tests/typecheck/should_compile/tc060.stderr index 825c3a627721..f4b6aa3ade96 100644 --- a/ghc/tests/typecheck/should_compile/tc060.stderr +++ b/ghc/tests/typecheck/should_compile/tc060.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc061.stderr b/ghc/tests/typecheck/should_compile/tc061.stderr index 2943fd4b8f33..ce9b08c62b84 100644 --- a/ghc/tests/typecheck/should_compile/tc061.stderr +++ b/ghc/tests/typecheck/should_compile/tc061.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc062.stderr b/ghc/tests/typecheck/should_compile/tc062.stderr index 5b8105254882..515302db947f 100644 --- a/ghc/tests/typecheck/should_compile/tc062.stderr +++ b/ghc/tests/typecheck/should_compile/tc062.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc063.stderr b/ghc/tests/typecheck/should_compile/tc063.stderr index 9b1d8fe6ff1d..b13121943145 100644 --- a/ghc/tests/typecheck/should_compile/tc063.stderr +++ b/ghc/tests/typecheck/should_compile/tc063.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc064.stderr b/ghc/tests/typecheck/should_compile/tc064.stderr index 5734a1dac7f7..7e78f400da04 100644 --- a/ghc/tests/typecheck/should_compile/tc064.stderr +++ b/ghc/tests/typecheck/should_compile/tc064.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc066.stderr b/ghc/tests/typecheck/should_compile/tc066.stderr index b8c7bf97534f..babf6d9fbcac 100644 --- a/ghc/tests/typecheck/should_compile/tc066.stderr +++ b/ghc/tests/typecheck/should_compile/tc066.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc067.stderr b/ghc/tests/typecheck/should_compile/tc067.stderr index 8b2ab9bdce9d..079db7f7e60a 100644 --- a/ghc/tests/typecheck/should_compile/tc067.stderr +++ b/ghc/tests/typecheck/should_compile/tc067.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc068.stderr b/ghc/tests/typecheck/should_compile/tc068.stderr index f99b609c33bd..6b96b5c856fe 100644 --- a/ghc/tests/typecheck/should_compile/tc068.stderr +++ b/ghc/tests/typecheck/should_compile/tc068.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc070.stderr b/ghc/tests/typecheck/should_compile/tc070.stderr index 5734a1dac7f7..7e78f400da04 100644 --- a/ghc/tests/typecheck/should_compile/tc070.stderr +++ b/ghc/tests/typecheck/should_compile/tc070.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc073.stderr b/ghc/tests/typecheck/should_compile/tc073.stderr index 8b2ab9bdce9d..079db7f7e60a 100644 --- a/ghc/tests/typecheck/should_compile/tc073.stderr +++ b/ghc/tests/typecheck/should_compile/tc073.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc074.stderr b/ghc/tests/typecheck/should_compile/tc074.stderr index f99b609c33bd..6b96b5c856fe 100644 --- a/ghc/tests/typecheck/should_compile/tc074.stderr +++ b/ghc/tests/typecheck/should_compile/tc074.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc077.stderr b/ghc/tests/typecheck/should_compile/tc077.stderr index 2ec321bfb5a5..f162b3201b06 100644 --- a/ghc/tests/typecheck/should_compile/tc077.stderr +++ b/ghc/tests/typecheck/should_compile/tc077.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc078.stderr b/ghc/tests/typecheck/should_compile/tc078.stderr index 8431460060e1..cb57d73d39b5 100644 --- a/ghc/tests/typecheck/should_compile/tc078.stderr +++ b/ghc/tests/typecheck/should_compile/tc078.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc079.stderr b/ghc/tests/typecheck/should_compile/tc079.stderr index 0a1d3b1b40dd..56b5e083ad39 100644 --- a/ghc/tests/typecheck/should_compile/tc079.stderr +++ b/ghc/tests/typecheck/should_compile/tc079.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc080.stderr b/ghc/tests/typecheck/should_compile/tc080.stderr index ccaf3b819e63..549b1e14da9e 100644 --- a/ghc/tests/typecheck/should_compile/tc080.stderr +++ b/ghc/tests/typecheck/should_compile/tc080.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc081.stderr b/ghc/tests/typecheck/should_compile/tc081.stderr index c4048b4babe2..1d22d27c7512 100644 --- a/ghc/tests/typecheck/should_compile/tc081.stderr +++ b/ghc/tests/typecheck/should_compile/tc081.stderr @@ -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]) ;; diff --git a/ghc/tests/typecheck/should_compile/tc082.stderr b/ghc/tests/typecheck/should_compile/tc082.stderr index d6c860aeb5b6..e81df9229452 100644 --- a/ghc/tests/typecheck/should_compile/tc082.stderr +++ b/ghc/tests/typecheck/should_compile/tc082.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc084.stderr b/ghc/tests/typecheck/should_compile/tc084.stderr index 433675155d76..70a62032078d 100644 --- a/ghc/tests/typecheck/should_compile/tc084.stderr +++ b/ghc/tests/typecheck/should_compile/tc084.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc085.stderr b/ghc/tests/typecheck/should_compile/tc085.stderr index 657ba011e75f..cdd95a74d22a 100644 --- a/ghc/tests/typecheck/should_compile/tc085.stderr +++ b/ghc/tests/typecheck/should_compile/tc085.stderr @@ -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 ; diff --git a/ghc/tests/typecheck/should_compile/tc086.stderr b/ghc/tests/typecheck/should_compile/tc086.stderr index f85e891c30c8..55c52c1b2772 100644 --- a/ghc/tests/typecheck/should_compile/tc086.stderr +++ b/ghc/tests/typecheck/should_compile/tc086.stderr @@ -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} ; diff --git a/ghc/tests/typecheck/should_compile/tc087.hs b/ghc/tests/typecheck/should_compile/tc087.hs index 415fbc6ee18b..ae467145a1b2 100644 --- a/ghc/tests/typecheck/should_compile/tc087.hs +++ b/ghc/tests/typecheck/should_compile/tc087.hs @@ -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]) diff --git a/ghc/tests/typecheck/should_compile/tc087.stderr b/ghc/tests/typecheck/should_compile/tc087.stderr index c3d9f48e1e16..8850108d651a 100644 --- a/ghc/tests/typecheck/should_compile/tc087.stderr +++ b/ghc/tests/typecheck/should_compile/tc087.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc088.stderr b/ghc/tests/typecheck/should_compile/tc088.stderr index 376c6012ad0e..87a99d929fdd 100644 --- a/ghc/tests/typecheck/should_compile/tc088.stderr +++ b/ghc/tests/typecheck/should_compile/tc088.stderr @@ -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)} ;; diff --git a/ghc/tests/typecheck/should_compile/tc089.stderr b/ghc/tests/typecheck/should_compile/tc089.stderr index 68e157130b95..8ef36a69899f 100644 --- a/ghc/tests/typecheck/should_compile/tc089.stderr +++ b/ghc/tests/typecheck/should_compile/tc089.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc090.stderr b/ghc/tests/typecheck/should_compile/tc090.stderr index 39b602f4b49b..a69fc17570fb 100644 --- a/ghc/tests/typecheck/should_compile/tc090.stderr +++ b/ghc/tests/typecheck/should_compile/tc090.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc091.stderr b/ghc/tests/typecheck/should_compile/tc091.stderr index 16f8baab4663..fe869c2ea1bb 100644 --- a/ghc/tests/typecheck/should_compile/tc091.stderr +++ b/ghc/tests/typecheck/should_compile/tc091.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc092.stderr b/ghc/tests/typecheck/should_compile/tc092.stderr index 31e96b8a239f..caffe4b9984e 100644 --- a/ghc/tests/typecheck/should_compile/tc092.stderr +++ b/ghc/tests/typecheck/should_compile/tc092.stderr @@ -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] ;; diff --git a/ghc/tests/typecheck/should_compile/tc093.stderr b/ghc/tests/typecheck/should_compile/tc093.stderr index 29630d4eaf5a..cfc536cef354 100644 --- a/ghc/tests/typecheck/should_compile/tc093.stderr +++ b/ghc/tests/typecheck/should_compile/tc093.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_compile/tc095.stderr b/ghc/tests/typecheck/should_compile/tc095.stderr index 30e5b7b228a0..dd425eb7c115 100644 --- a/ghc/tests/typecheck/should_compile/tc095.stderr +++ b/ghc/tests/typecheck/should_compile/tc095.stderr @@ -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 ;; diff --git a/ghc/tests/typecheck/should_fail/Digraph.stderr b/ghc/tests/typecheck/should_fail/Digraph.stderr index c576bf45800c..e4a2017291b3 100644 --- a/ghc/tests/typecheck/should_fail/Digraph.stderr +++ b/ghc/tests/typecheck/should_fail/Digraph.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail001.stderr b/ghc/tests/typecheck/should_fail/tcfail001.stderr index e4b4cbfd16c8..12c88e6f9b09 100644 --- a/ghc/tests/typecheck/should_fail/tcfail001.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail001.stderr @@ -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' diff --git a/ghc/tests/typecheck/should_fail/tcfail002.stderr b/ghc/tests/typecheck/should_fail/tcfail002.stderr index 1779c2af10cd..5fa5936fe5ed 100644 --- a/ghc/tests/typecheck/should_fail/tcfail002.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail002.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail003.stderr b/ghc/tests/typecheck/should_fail/tcfail003.stderr index 78cf0321b9f0..c3bc95c6520e 100644 --- a/ghc/tests/typecheck/should_fail/tcfail003.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail003.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail004.stderr b/ghc/tests/typecheck/should_fail/tcfail004.stderr index b5a525f12d13..464687e20fd3 100644 --- a/ghc/tests/typecheck/should_fail/tcfail004.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail004.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail005.stderr b/ghc/tests/typecheck/should_fail/tcfail005.stderr index 72c88b5e0eb3..c9e6fa8708dd 100644 --- a/ghc/tests/typecheck/should_fail/tcfail005.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail005.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail006.stderr b/ghc/tests/typecheck/should_fail/tcfail006.stderr index 0a5168a0bf22..fb669e5f1ba4 100644 --- a/ghc/tests/typecheck/should_fail/tcfail006.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail006.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail007.stderr b/ghc/tests/typecheck/should_fail/tcfail007.stderr index 646146918c56..ff827617ffbb 100644 --- a/ghc/tests/typecheck/should_fail/tcfail007.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail007.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail008.stderr b/ghc/tests/typecheck/should_fail/tcfail008.stderr index 6d0057769591..8a852ef65e1c 100644 --- a/ghc/tests/typecheck/should_fail/tcfail008.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail008.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail009.stderr b/ghc/tests/typecheck/should_fail/tcfail009.stderr index e37fd85dc7e7..de08837628e1 100644 --- a/ghc/tests/typecheck/should_fail/tcfail009.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail009.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail010.stderr b/ghc/tests/typecheck/should_fail/tcfail010.stderr index 29992511720d..41a77c42873e 100644 --- a/ghc/tests/typecheck/should_fail/tcfail010.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail010.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail012.stderr b/ghc/tests/typecheck/should_fail/tcfail012.stderr index 705d07620fb4..09cd1db7156d 100644 --- a/ghc/tests/typecheck/should_fail/tcfail012.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail012.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail013.stderr b/ghc/tests/typecheck/should_fail/tcfail013.stderr index 3da86aa189cd..327ceec5bccb 100644 --- a/ghc/tests/typecheck/should_fail/tcfail013.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail013.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail014.stderr b/ghc/tests/typecheck/should_fail/tcfail014.stderr index 3917d0ee1b03..2793d7aca710 100644 --- a/ghc/tests/typecheck/should_fail/tcfail014.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail014.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail015.stderr b/ghc/tests/typecheck/should_fail/tcfail015.stderr index 101e2f4a8d06..49fb603b52dd 100644 --- a/ghc/tests/typecheck/should_fail/tcfail015.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail015.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail016.stderr b/ghc/tests/typecheck/should_fail/tcfail016.stderr index 8736b16c1255..f27a018c0c43 100644 --- a/ghc/tests/typecheck/should_fail/tcfail016.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail016.stderr @@ -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)' diff --git a/ghc/tests/typecheck/should_fail/tcfail018.stderr b/ghc/tests/typecheck/should_fail/tcfail018.stderr index e8c7737c1385..d9b50e44cf13 100644 --- a/ghc/tests/typecheck/should_fail/tcfail018.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail018.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail021.stderr b/ghc/tests/typecheck/should_fail/tcfail021.stderr index 31120b0494f4..f11ceacd0bdf 100644 --- a/ghc/tests/typecheck/should_fail/tcfail021.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail021.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail023.stderr b/ghc/tests/typecheck/should_fail/tcfail023.stderr index 035355debce4..344d0f33f7e0 100644 --- a/ghc/tests/typecheck/should_fail/tcfail023.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail023.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail027.stderr b/ghc/tests/typecheck/should_fail/tcfail027.stderr index c06f988ccd45..5114e9ca42fe 100644 --- a/ghc/tests/typecheck/should_fail/tcfail027.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail027.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail028.stderr b/ghc/tests/typecheck/should_fail/tcfail028.stderr index d2983200934d..2639267ccf39 100644 --- a/ghc/tests/typecheck/should_fail/tcfail028.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail028.stderr @@ -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' diff --git a/ghc/tests/typecheck/should_fail/tcfail029.stderr b/ghc/tests/typecheck/should_fail/tcfail029.stderr index b674e431c3ee..2bca84f180fa 100644 --- a/ghc/tests/typecheck/should_fail/tcfail029.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail029.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail031.stderr b/ghc/tests/typecheck/should_fail/tcfail031.stderr index 999490920386..f13bfaf480e7 100644 --- a/ghc/tests/typecheck/should_fail/tcfail031.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail031.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail032.stderr b/ghc/tests/typecheck/should_fail/tcfail032.stderr index 0a2b33b236a0..8601fba8aba8 100644 --- a/ghc/tests/typecheck/should_fail/tcfail032.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail032.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail033.stderr b/ghc/tests/typecheck/should_fail/tcfail033.stderr index f2b13dcdb0ce..35db1ce346a9 100644 --- a/ghc/tests/typecheck/should_fail/tcfail033.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail033.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail034.stderr b/ghc/tests/typecheck/should_fail/tcfail034.stderr index cc383ac9c030..aaa795f92066 100644 --- a/ghc/tests/typecheck/should_fail/tcfail034.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail034.stderr @@ -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' diff --git a/ghc/tests/typecheck/should_fail/tcfail036.stderr b/ghc/tests/typecheck/should_fail/tcfail036.stderr index 2159b499058b..bb262f432687 100644 --- a/ghc/tests/typecheck/should_fail/tcfail036.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail036.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail040.stderr b/ghc/tests/typecheck/should_fail/tcfail040.stderr index 6550bc2470e6..b63b4a313f62 100644 --- a/ghc/tests/typecheck/should_fail/tcfail040.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail040.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail044.stderr b/ghc/tests/typecheck/should_fail/tcfail044.stderr index 3007968c2b49..6651435066dd 100644 --- a/ghc/tests/typecheck/should_fail/tcfail044.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail044.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail045.stderr b/ghc/tests/typecheck/should_fail/tcfail045.stderr index 9a3f3c12f3bc..017d2247b0ee 100644 --- a/ghc/tests/typecheck/should_fail/tcfail045.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail045.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail055.stderr b/ghc/tests/typecheck/should_fail/tcfail055.stderr index 5166568fba1c..ab6941b34c8d 100644 --- a/ghc/tests/typecheck/should_fail/tcfail055.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail055.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail057.stderr b/ghc/tests/typecheck/should_fail/tcfail057.stderr index 63e93c96da85..c697dd103f35 100644 --- a/ghc/tests/typecheck/should_fail/tcfail057.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail057.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail058.stderr b/ghc/tests/typecheck/should_fail/tcfail058.stderr index 332406a26b15..8a9b740bb0fb 100644 --- a/ghc/tests/typecheck/should_fail/tcfail058.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail058.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail065.stderr b/ghc/tests/typecheck/should_fail/tcfail065.stderr index c2cc0516612c..580ebf6f8b4f 100644 --- a/ghc/tests/typecheck/should_fail/tcfail065.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail065.stderr @@ -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' diff --git a/ghc/tests/typecheck/should_fail/tcfail067.stderr b/ghc/tests/typecheck/should_fail/tcfail067.stderr index fb5b59eff7ed..ccaac4a8660a 100644 --- a/ghc/tests/typecheck/should_fail/tcfail067.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail067.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail068.stderr b/ghc/tests/typecheck/should_fail/tcfail068.stderr index 63440c2aa708..beba5e1372ba 100644 --- a/ghc/tests/typecheck/should_fail/tcfail068.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail068.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail069.stderr b/ghc/tests/typecheck/should_fail/tcfail069.stderr index 260666389c5e..e8cb82bdc874 100644 --- a/ghc/tests/typecheck/should_fail/tcfail069.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail069.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail070.stderr b/ghc/tests/typecheck/should_fail/tcfail070.stderr index 475c96becb8a..553969db5837 100644 --- a/ghc/tests/typecheck/should_fail/tcfail070.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail070.stderr @@ -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' diff --git a/ghc/tests/typecheck/should_fail/tcfail071.stderr b/ghc/tests/typecheck/should_fail/tcfail071.stderr index de77b0c489bc..ef059b3abfe3 100644 --- a/ghc/tests/typecheck/should_fail/tcfail071.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail071.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail072.stderr b/ghc/tests/typecheck/should_fail/tcfail072.stderr index c8a7b6f60e30..53d307195dd9 100644 --- a/ghc/tests/typecheck/should_fail/tcfail072.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail072.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail073.stderr b/ghc/tests/typecheck/should_fail/tcfail073.stderr index e7f448fba16e..b02320d160d1 100644 --- a/ghc/tests/typecheck/should_fail/tcfail073.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail073.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail076.hs b/ghc/tests/typecheck/should_fail/tcfail076.hs index 262b79f9fa7e..7d8f136bc196 100644 --- a/ghc/tests/typecheck/should_fail/tcfail076.hs +++ b/ghc/tests/typecheck/should_fail/tcfail076.hs @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail076.stderr b/ghc/tests/typecheck/should_fail/tcfail076.stderr index 7fd5f0c6137b..fa09963faabe 100644 --- a/ghc/tests/typecheck/should_fail/tcfail076.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail076.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail078.stderr b/ghc/tests/typecheck/should_fail/tcfail078.stderr index 5909239f11e1..ed2c64a13599 100644 --- a/ghc/tests/typecheck/should_fail/tcfail078.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail078.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_fail/tcfail080.stderr b/ghc/tests/typecheck/should_fail/tcfail080.stderr index 3096a5e800d5..8a336d902c09 100644 --- a/ghc/tests/typecheck/should_fail/tcfail080.stderr +++ b/ghc/tests/typecheck/should_fail/tcfail080.stderr @@ -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 diff --git a/ghc/tests/typecheck/should_run/tcrun002.hs b/ghc/tests/typecheck/should_run/tcrun002.hs index 0c511f63cdeb..3e278727843a 100644 --- a/ghc/tests/typecheck/should_run/tcrun002.hs +++ b/ghc/tests/typecheck/should_run/tcrun002.hs @@ -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) -- GitLab