summaryrefslogtreecommitdiff
path: root/testsuite/tests
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2015-08-05 14:24:54 +0100
committerSimon Peyton Jones <simonpj@microsoft.com>2015-08-05 16:50:41 +0100
commit953648127cea2836ec134b03a966695ac0b36434 (patch)
tree6b5721dc6f0133b54af97c60f396e9207ef223ae /testsuite/tests
parentab98860871cfac17417d5b55e590445064d21111 (diff)
downloadhaskell-953648127cea2836ec134b03a966695ac0b36434.tar.gz
Tidy up and refactor wildcard handling
When examining #10615, I found the wildcard handling hard to understand. This patch refactors quite a bit, but with no real change in behaviour. * Split out TcIdSigInfo from TcSigInfo, as a separate type, like TcPatSynInfo. * Make TcIdSigInfo express more invariants by pushing the wildard info into TcIdSigBndr * Remove all special treatment of unification variables that arise from wildcards; so the TauTv of TcType.MetaInfo loses its Bool argument. A ton of konck on changes. The result is significantly simpler, I think.
Diffstat (limited to 'testsuite/tests')
-rw-r--r--testsuite/tests/ghci/scripts/Defer02.stderr382
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr14
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Either.stderr14
-rw-r--r--testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr14
-rw-r--r--testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr462
-rw-r--r--testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr14
-rw-r--r--testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr14
-rw-r--r--testsuite/tests/partial-sigs/should_compile/SplicesUsed.stderr155
-rw-r--r--testsuite/tests/partial-sigs/should_compile/T10403.stderr75
-rw-r--r--testsuite/tests/partial-sigs/should_compile/T10438.stderr53
-rw-r--r--testsuite/tests/partial-sigs/should_compile/T10519.stderr9
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Uncurry.stderr14
-rw-r--r--testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr14
-rw-r--r--testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr100
-rw-r--r--testsuite/tests/partial-sigs/should_fail/Defaulting1MROff.stderr12
-rw-r--r--testsuite/tests/partial-sigs/should_fail/ExtraConstraintsWildcardNotEnabled.stderr11
-rw-r--r--testsuite/tests/partial-sigs/should_fail/InstantiatedNamedWildcardsInConstraints.stderr28
-rw-r--r--testsuite/tests/partial-sigs/should_fail/NamedWildcardsEnabled.stderr22
-rw-r--r--testsuite/tests/partial-sigs/should_fail/PartialTypeSignaturesDisabled.stderr22
-rw-r--r--testsuite/tests/partial-sigs/should_fail/TidyClash.stderr32
-rw-r--r--testsuite/tests/partial-sigs/should_fail/Trac10045.stderr91
-rw-r--r--testsuite/tests/partial-sigs/should_fail/WildcardInPatSynSig.stderr9
-rw-r--r--testsuite/tests/partial-sigs/should_fail/WildcardInstantiations.stderr96
-rw-r--r--testsuite/tests/partial-sigs/should_fail/WildcardsInPatternAndExprSig.stderr148
-rw-r--r--testsuite/tests/typecheck/should_compile/T10072.stderr16
-rw-r--r--testsuite/tests/typecheck/should_fail/tcfail198.stderr26
26 files changed, 943 insertions, 904 deletions
diff --git a/testsuite/tests/ghci/scripts/Defer02.stderr b/testsuite/tests/ghci/scripts/Defer02.stderr
index 4a92236b38..cc5ae21d20 100644
--- a/testsuite/tests/ghci/scripts/Defer02.stderr
+++ b/testsuite/tests/ghci/scripts/Defer02.stderr
@@ -1,189 +1,193 @@
-
-../../typecheck/should_run/Defer01.hs:11:40: warning:
- Couldn't match type ‘Char’ with ‘[Char]’
- Expected type: String
- Actual type: Char
- In the first argument of ‘putStr’, namely ‘','’
- In the second argument of ‘(>>)’, namely ‘putStr ','’
- In the expression: putStr "Hello World" >> putStr ','
-
-../../typecheck/should_run/Defer01.hs:14:5: warning:
- Couldn't match expected type ‘Int’ with actual type ‘Char’
- In the expression: 'p'
- In an equation for ‘a’: a = 'p'
-
-../../typecheck/should_run/Defer01.hs:18:9: warning:
- No instance for (Eq B) arising from a use of ‘==’
- In the expression: x == x
- In an equation for ‘b’: b x = x == x
-
-../../typecheck/should_run/Defer01.hs:25:4: warning:
- Couldn't match type ‘Int’ with ‘Bool’
- Inaccessible code in
- a pattern with constructor: C2 :: Bool -> C Bool,
- in an equation for ‘c’
- In the pattern: C2 x
- In an equation for ‘c’: c (C2 x) = True
-
-../../typecheck/should_run/Defer01.hs:28:5: warning:
- No instance for (Num (a -> a)) arising from the literal ‘1’
- (maybe you haven't applied a function to enough arguments?)
- In the expression: 1
- In an equation for ‘d’: d = 1
-
-../../typecheck/should_run/Defer01.hs:31:5: warning:
- Couldn't match expected type ‘Char -> t’ with actual type ‘Char’
- Relevant bindings include
- f :: t (bound at ../../typecheck/should_run/Defer01.hs:31:1)
- The function ‘e’ is applied to one argument,
- but its type ‘Char’ has none
- In the expression: e 'q'
- In an equation for ‘f’: f = e 'q'
-
-../../typecheck/should_run/Defer01.hs:34:8: warning:
- Couldn't match expected type ‘Char’ with actual type ‘a’
- ‘a’ is a rigid type variable bound by
- the type signature for: h :: a -> (Char, Char)
- at ../../typecheck/should_run/Defer01.hs:33:6
- Relevant bindings include
- x :: a (bound at ../../typecheck/should_run/Defer01.hs:34:3)
- h :: a -> (Char, Char)
- (bound at ../../typecheck/should_run/Defer01.hs:34:1)
- In the expression: x
- In the expression: (x, 'c')
-
-../../typecheck/should_run/Defer01.hs:39:17: warning:
- Couldn't match expected type ‘Bool’ with actual type ‘T a’
- Relevant bindings include
- a :: a (bound at ../../typecheck/should_run/Defer01.hs:39:3)
- i :: a -> () (bound at ../../typecheck/should_run/Defer01.hs:39:1)
- In the first argument of ‘not’, namely ‘(K a)’
- In the expression: (not (K a))
-
-../../typecheck/should_run/Defer01.hs:43:5: warning:
- No instance for (MyClass a1) arising from a use of ‘myOp’
- In the expression: myOp 23
- In an equation for ‘j’: j = myOp 23
-
-../../typecheck/should_run/Defer01.hs:43:10: warning:
- No instance for (Num a1) arising from the literal ‘23’
- The type variable ‘a1’ is ambiguous
- Note: there are several potential instances:
- instance Num Integer -- Defined in ‘GHC.Num’
- instance Num Double -- Defined in ‘GHC.Float’
- instance Num Float -- Defined in ‘GHC.Float’
- ...plus two others
- In the first argument of ‘myOp’, namely ‘23’
- In the expression: myOp 23
- In an equation for ‘j’: j = myOp 23
-
-../../typecheck/should_run/Defer01.hs:45:6: warning:
- Couldn't match type ‘Int’ with ‘Bool’
- Inaccessible code in
- the type signature for: k :: (Int ~ Bool) => Int -> Bool
- In the ambiguity check for the type signature for ‘k’:
- k :: (Int ~ Bool) => Int -> Bool
- To defer the ambiguity check to use sites, enable AllowAmbiguousTypes
- In the type signature for ‘k’: k :: (Int ~ Bool) => Int -> Bool
-
-../../typecheck/should_run/Defer01.hs:45:6: warning:
- Couldn't match expected type ‘Bool’ with actual type ‘Int’
- In the ambiguity check for the type signature for ‘k’:
- k :: (Int ~ Bool) => Int -> Bool
- To defer the ambiguity check to use sites, enable AllowAmbiguousTypes
- In the type signature for ‘k’: k :: (Int ~ Bool) => Int -> Bool
-
-../../typecheck/should_run/Defer01.hs:45:6: warning:
- Couldn't match type ‘Int’ with ‘Bool’
- Inaccessible code in
- the type signature for: k :: (Int ~ Bool) => Int -> Bool
-
-../../typecheck/should_run/Defer01.hs:46:7: warning:
- Couldn't match expected type ‘Bool’ with actual type ‘Int’
- In the expression: x
- In an equation for ‘k’: k x = x
-
-../../typecheck/should_run/Defer01.hs:49:5: warning:
- Couldn't match expected type ‘IO a0’
- with actual type ‘Char -> IO ()’
- Probable cause: ‘putChar’ is applied to too few arguments
- In the first argument of ‘(>>)’, namely ‘putChar’
- In the expression: putChar >> putChar 'p'
-*** Exception: ../../typecheck/should_run/Defer01.hs:11:40: error:
- Couldn't match type ‘Char’ with ‘[Char]’
- Expected type: String
- Actual type: Char
- In the first argument of ‘putStr’, namely ‘','’
- In the second argument of ‘(>>)’, namely ‘putStr ','’
- In the expression: putStr "Hello World" >> putStr ','
-(deferred type error)
-*** Exception: ../../typecheck/should_run/Defer01.hs:14:5: error:
- Couldn't match expected type ‘Int’ with actual type ‘Char’
- In the expression: 'p'
- In an equation for ‘a’: a = 'p'
-(deferred type error)
-*** Exception: ../../typecheck/should_run/Defer01.hs:18:9: error:
- No instance for (Eq B) arising from a use of ‘==’
- In the expression: x == x
- In an equation for ‘b’: b x = x == x
-(deferred type error)
-
-<interactive>:7:11: error:
- Couldn't match type ‘Bool’ with ‘Int’
- Expected type: C Int
- Actual type: C Bool
- In the first argument of ‘c’, namely ‘(C2 True)’
- In the first argument of ‘print’, namely ‘(c (C2 True))’
-*** Exception: ../../typecheck/should_run/Defer01.hs:28:5: error:
- No instance for (Num (a -> a)) arising from the literal ‘1’
- (maybe you haven't applied a function to enough arguments?)
- In the expression: 1
- In an equation for ‘d’: d = 1
-(deferred type error)
-*** Exception: ../../typecheck/should_run/Defer01.hs:31:5: error:
- Couldn't match expected type ‘Char -> t’ with actual type ‘Char’
- Relevant bindings include
- f :: t (bound at ../../typecheck/should_run/Defer01.hs:31:1)
- The function ‘e’ is applied to one argument,
- but its type ‘Char’ has none
- In the expression: e 'q'
- In an equation for ‘f’: f = e 'q'
-(deferred type error)
-*** Exception: ../../typecheck/should_run/Defer01.hs:34:8: error:
- Couldn't match expected type ‘Char’ with actual type ‘a’
- ‘a’ is a rigid type variable bound by
- the type signature for: h :: a -> (Char, Char)
- at ../../typecheck/should_run/Defer01.hs:33:6
- Relevant bindings include
- x :: a (bound at ../../typecheck/should_run/Defer01.hs:34:3)
- h :: a -> (Char, Char)
- (bound at ../../typecheck/should_run/Defer01.hs:34:1)
- In the expression: x
- In the expression: (x, 'c')
-(deferred type error)
-*** Exception: ../../typecheck/should_run/Defer01.hs:39:17: error:
- Couldn't match expected type ‘Bool’ with actual type ‘T a’
- Relevant bindings include
- a :: a (bound at ../../typecheck/should_run/Defer01.hs:39:3)
- i :: a -> () (bound at ../../typecheck/should_run/Defer01.hs:39:1)
- In the first argument of ‘not’, namely ‘(K a)’
- In the expression: (not (K a))
-(deferred type error)
-*** Exception: ../../typecheck/should_run/Defer01.hs:43:5: error:
- No instance for (MyClass a1) arising from a use of ‘myOp’
- In the expression: myOp 23
- In an equation for ‘j’: j = myOp 23
-(deferred type error)
-
-<interactive>:13:8: error:
- Couldn't match expected type ‘Bool’ with actual type ‘Int’
- In the first argument of ‘print’, namely ‘(k 2)’
- In the expression: print (k 2)
- In an equation for ‘it’: it = print (k 2)
-*** Exception: ../../typecheck/should_run/Defer01.hs:49:5: error:
- Couldn't match expected type ‘IO a0’
- with actual type ‘Char -> IO ()’
- Probable cause: ‘putChar’ is applied to too few arguments
- In the first argument of ‘(>>)’, namely ‘putChar’
- In the expression: putChar >> putChar 'p'
-(deferred type error)
+
+..\..\typecheck\should_run\Defer01.hs:11:40: warning:
+ Couldn't match type ‘Char’ with ‘[Char]’
+ Expected type: String
+ Actual type: Char
+ In the first argument of ‘putStr’, namely ‘','’
+ In the second argument of ‘(>>)’, namely ‘putStr ','’
+ In the expression: putStr "Hello World" >> putStr ','
+
+..\..\typecheck\should_run\Defer01.hs:14:5: warning:
+ Couldn't match expected type ‘Int’ with actual type ‘Char’
+ In the expression: 'p'
+ In an equation for ‘a’: a = 'p'
+
+..\..\typecheck\should_run\Defer01.hs:18:9: warning:
+ No instance for (Eq B) arising from a use of ‘==’
+ In the expression: x == x
+ In an equation for ‘b’: b x = x == x
+
+..\..\typecheck\should_run\Defer01.hs:25:4: warning:
+ Couldn't match type ‘Int’ with ‘Bool’
+ Inaccessible code in
+ a pattern with constructor: C2 :: Bool -> C Bool,
+ in an equation for ‘c’
+ In the pattern: C2 x
+ In an equation for ‘c’: c (C2 x) = True
+
+..\..\typecheck\should_run\Defer01.hs:28:5: warning:
+ No instance for (Num (a -> a)) arising from the literal ‘1’
+ (maybe you haven't applied a function to enough arguments?)
+ In the expression: 1
+ In an equation for ‘d’: d = 1
+
+..\..\typecheck\should_run\Defer01.hs:31:5: warning:
+ Couldn't match expected type ‘Char -> t’ with actual type ‘Char’
+ Relevant bindings include
+ f :: t (bound at ..\..\typecheck\should_run\Defer01.hs:31:1)
+ The function ‘e’ is applied to one argument,
+ but its type ‘Char’ has none
+ In the expression: e 'q'
+ In an equation for ‘f’: f = e 'q'
+
+..\..\typecheck\should_run\Defer01.hs:34:8: warning:
+ Couldn't match expected type ‘Char’ with actual type ‘a’
+ ‘a’ is a rigid type variable bound by
+ the type signature for:
+ h :: a -> (Char, Char)
+ at ..\..\typecheck\should_run\Defer01.hs:33:6
+ Relevant bindings include
+ x :: a (bound at ..\..\typecheck\should_run\Defer01.hs:34:3)
+ h :: a -> (Char, Char)
+ (bound at ..\..\typecheck\should_run\Defer01.hs:34:1)
+ In the expression: x
+ In the expression: (x, 'c')
+
+..\..\typecheck\should_run\Defer01.hs:39:17: warning:
+ Couldn't match expected type ‘Bool’ with actual type ‘T a’
+ Relevant bindings include
+ a :: a (bound at ..\..\typecheck\should_run\Defer01.hs:39:3)
+ i :: a -> () (bound at ..\..\typecheck\should_run\Defer01.hs:39:1)
+ In the first argument of ‘not’, namely ‘(K a)’
+ In the expression: (not (K a))
+
+..\..\typecheck\should_run\Defer01.hs:43:5: warning:
+ No instance for (MyClass a1) arising from a use of ‘myOp’
+ In the expression: myOp 23
+ In an equation for ‘j’: j = myOp 23
+
+..\..\typecheck\should_run\Defer01.hs:43:10: warning:
+ No instance for (Num a1) arising from the literal ‘23’
+ The type variable ‘a1’ is ambiguous
+ Note: there are several potential instances:
+ instance Num Integer -- Defined in ‘GHC.Num’
+ instance Num Double -- Defined in ‘GHC.Float’
+ instance Num Float -- Defined in ‘GHC.Float’
+ ...plus two others
+ In the first argument of ‘myOp’, namely ‘23’
+ In the expression: myOp 23
+ In an equation for ‘j’: j = myOp 23
+
+..\..\typecheck\should_run\Defer01.hs:45:6: warning:
+ Couldn't match type ‘Int’ with ‘Bool’
+ Inaccessible code in
+ the type signature for:
+ k :: (Int ~ Bool) => Int -> Bool
+ In the ambiguity check for the type signature for ‘k’:
+ k :: (Int ~ Bool) => Int -> Bool
+ To defer the ambiguity check to use sites, enable AllowAmbiguousTypes
+ In the type signature for ‘k’: k :: (Int ~ Bool) => Int -> Bool
+
+..\..\typecheck\should_run\Defer01.hs:45:6: warning:
+ Couldn't match expected type ‘Bool’ with actual type ‘Int’
+ In the ambiguity check for the type signature for ‘k’:
+ k :: (Int ~ Bool) => Int -> Bool
+ To defer the ambiguity check to use sites, enable AllowAmbiguousTypes
+ In the type signature for ‘k’: k :: (Int ~ Bool) => Int -> Bool
+
+..\..\typecheck\should_run\Defer01.hs:45:6: warning:
+ Couldn't match type ‘Int’ with ‘Bool’
+ Inaccessible code in
+ the type signature for:
+ k :: (Int ~ Bool) => Int -> Bool
+
+..\..\typecheck\should_run\Defer01.hs:46:7: warning:
+ Couldn't match expected type ‘Bool’ with actual type ‘Int’
+ In the expression: x
+ In an equation for ‘k’: k x = x
+
+..\..\typecheck\should_run\Defer01.hs:49:5: warning:
+ Couldn't match expected type ‘IO a0’
+ with actual type ‘Char -> IO ()’
+ Probable cause: ‘putChar’ is applied to too few arguments
+ In the first argument of ‘(>>)’, namely ‘putChar’
+ In the expression: putChar >> putChar 'p'
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:11:40: error:
+ Couldn't match type ‘Char’ with ‘[Char]’
+ Expected type: String
+ Actual type: Char
+ In the first argument of ‘putStr’, namely ‘','’
+ In the second argument of ‘(>>)’, namely ‘putStr ','’
+ In the expression: putStr "Hello World" >> putStr ','
+(deferred type error)
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:14:5: error:
+ Couldn't match expected type ‘Int’ with actual type ‘Char’
+ In the expression: 'p'
+ In an equation for ‘a’: a = 'p'
+(deferred type error)
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:18:9: error:
+ No instance for (Eq B) arising from a use of ‘==’
+ In the expression: x == x
+ In an equation for ‘b’: b x = x == x
+(deferred type error)
+
+<interactive>:7:11: error:
+ Couldn't match type ‘Bool’ with ‘Int’
+ Expected type: C Int
+ Actual type: C Bool
+ In the first argument of ‘c’, namely ‘(C2 True)’
+ In the first argument of ‘print’, namely ‘(c (C2 True))’
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:28:5: error:
+ No instance for (Num (a -> a)) arising from the literal ‘1’
+ (maybe you haven't applied a function to enough arguments?)
+ In the expression: 1
+ In an equation for ‘d’: d = 1
+(deferred type error)
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:31:5: error:
+ Couldn't match expected type ‘Char -> t’ with actual type ‘Char’
+ Relevant bindings include
+ f :: t (bound at ..\..\typecheck\should_run\Defer01.hs:31:1)
+ The function ‘e’ is applied to one argument,
+ but its type ‘Char’ has none
+ In the expression: e 'q'
+ In an equation for ‘f’: f = e 'q'
+(deferred type error)
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:34:8: error:
+ Couldn't match expected type ‘Char’ with actual type ‘a’
+ ‘a’ is a rigid type variable bound by
+ the type signature for:
+ h :: a -> (Char, Char)
+ at ..\..\typecheck\should_run\Defer01.hs:33:6
+ Relevant bindings include
+ x :: a (bound at ..\..\typecheck\should_run\Defer01.hs:34:3)
+ h :: a -> (Char, Char)
+ (bound at ..\..\typecheck\should_run\Defer01.hs:34:1)
+ In the expression: x
+ In the expression: (x, 'c')
+(deferred type error)
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:39:17: error:
+ Couldn't match expected type ‘Bool’ with actual type ‘T a’
+ Relevant bindings include
+ a :: a (bound at ..\..\typecheck\should_run\Defer01.hs:39:3)
+ i :: a -> () (bound at ..\..\typecheck\should_run\Defer01.hs:39:1)
+ In the first argument of ‘not’, namely ‘(K a)’
+ In the expression: (not (K a))
+(deferred type error)
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:43:5: error:
+ No instance for (MyClass a1) arising from a use of ‘myOp’
+ In the expression: myOp 23
+ In an equation for ‘j’: j = myOp 23
+(deferred type error)
+
+<interactive>:13:8: error:
+ Couldn't match expected type ‘Bool’ with actual type ‘Int’
+ In the first argument of ‘print’, namely ‘(k 2)’
+ In the expression: print (k 2)
+ In an equation for ‘it’: it = print (k 2)
+*** Exception: ..\..\typecheck\should_run\Defer01.hs:49:5: error:
+ Couldn't match expected type ‘IO a0’
+ with actual type ‘Char -> IO ()’
+ Probable cause: ‘putChar’ is applied to too few arguments
+ In the first argument of ‘(>>)’, namely ‘putChar’
+ In the expression: putChar >> putChar 'p'
+(deferred type error)
diff --git a/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr b/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr
index cf7cd3ed76..fe4fcaab1d 100644
--- a/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr
@@ -1,7 +1,7 @@
-TYPE SIGNATURES
- bravo :: forall w_. Num w_ => w_
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ bravo :: forall t. Num t => t
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/Either.stderr b/testsuite/tests/partial-sigs/should_compile/Either.stderr
index 59ff75cc76..23eb0275f1 100644
--- a/testsuite/tests/partial-sigs/should_compile/Either.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Either.stderr
@@ -1,7 +1,7 @@
-TYPE SIGNATURES
- barry :: forall w_a. w_a -> (Either [Char] w_a, Either [Char] w_a)
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ barry :: forall t. t -> (Either [Char] t, Either [Char] t)
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr b/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr
index 0d3dd7befe..b42edf58ef 100644
--- a/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr
@@ -1,7 +1,7 @@
-TYPE SIGNATURES
- every :: forall w_a. (w_a -> Bool) -> [w_a] -> Bool
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ every :: forall t. (t -> Bool) -> [t] -> Bool
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr b/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr
index 0edc8157e7..8799acd45b 100644
--- a/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr
@@ -1,231 +1,231 @@
-TYPE SIGNATURES
- !! :: forall a. [a] -> Int -> a
- $ :: forall a b. (a -> b) -> a -> b
- $! :: forall a b. (a -> b) -> a -> b
- && :: Bool -> Bool -> Bool
- * :: forall a. Num a => a -> a -> a
- ** :: forall a. Floating a => a -> a -> a
- + :: forall a. Num a => a -> a -> a
- ++ :: forall a. [a] -> [a] -> [a]
- - :: forall a. Num a => a -> a -> a
- . :: forall b c a. (b -> c) -> (a -> b) -> a -> c
- / :: forall a. Fractional a => a -> a -> a
- /= :: forall a. Eq a => a -> a -> Bool
- < :: forall a. Ord a => a -> a -> Bool
- <= :: forall a. Ord a => a -> a -> Bool
- =<< ::
- forall a (m :: * -> *) b. Monad m => (a -> m b) -> m a -> m b
- == :: forall a. Eq a => a -> a -> Bool
- > :: forall a. Ord a => a -> a -> Bool
- >= :: forall a. Ord a => a -> a -> Bool
- >> :: forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
- >>= ::
- forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
- ^ :: forall a b. (Integral b, Num a) => a -> b -> a
- ^^ :: forall a b. (Fractional a, Integral b) => a -> b -> a
- abs :: forall a. Num a => a -> a
- acos :: forall a. Floating a => a -> a
- acosh :: forall a. Floating a => a -> a
- all ::
- forall a (t :: * -> *). Foldable t => (a -> Bool) -> t a -> Bool
- and :: forall (t :: * -> *). Foldable t => t Bool -> Bool
- any ::
- forall a (t :: * -> *). Foldable t => (a -> Bool) -> t a -> Bool
- appendFile :: FilePath -> String -> IO ()
- asTypeOf :: forall a. a -> a -> a
- asin :: forall a. Floating a => a -> a
- asinh :: forall a. Floating a => a -> a
- atan :: forall a. Floating a => a -> a
- atan2 :: forall a. RealFloat a => a -> a -> a
- atanh :: forall a. Floating a => a -> a
- break :: forall a. (a -> Bool) -> [a] -> ([a], [a])
- ceiling :: forall a b. (Integral b, RealFrac a) => a -> b
- compare :: forall a. Ord a => a -> a -> Ordering
- concat :: forall (t :: * -> *) a. Foldable t => t [a] -> [a]
- concatMap ::
- forall a b (t :: * -> *). Foldable t => (a -> [b]) -> t a -> [b]
- const :: forall a b. a -> b -> a
- cos :: forall a. Floating a => a -> a
- cosh :: forall a. Floating a => a -> a
- curry :: forall a b c. ((a, b) -> c) -> a -> b -> c
- cycle :: forall a. [a] -> [a]
- decodeFloat :: forall a. RealFloat a => a -> (Integer, Int)
- div :: forall a. Integral a => a -> a -> a
- divMod :: forall a. Integral a => a -> a -> (a, a)
- drop :: forall a. Int -> [a] -> [a]
- dropWhile :: forall a. (a -> Bool) -> [a] -> [a]
- either :: forall a c b. (a -> c) -> (b -> c) -> Either a b -> c
- elem ::
- forall (t :: * -> *) a. (Eq a, Foldable t) => a -> t a -> Bool
- encodeFloat :: forall a. RealFloat a => Integer -> Int -> a
- enumFrom :: forall a. Enum a => a -> [a]
- enumFromThen :: forall a. Enum a => a -> a -> [a]
- enumFromThenTo :: forall a. Enum a => a -> a -> a -> [a]
- enumFromTo :: forall a. Enum a => a -> a -> [a]
- error :: forall a. [Char] -> a
- even :: forall a. Integral a => a -> Bool
- exp :: forall a. Floating a => a -> a
- exponent :: forall a. RealFloat a => a -> Int
- fail :: forall (m :: * -> *) a. Monad m => String -> m a
- filter :: forall a. (a -> Bool) -> [a] -> [a]
- flip :: forall a b c. (a -> b -> c) -> b -> a -> c
- floatDigits :: forall a. RealFloat a => a -> Int
- floatRadix :: forall a. RealFloat a => a -> Integer
- floatRange :: forall a. RealFloat a => a -> (Int, Int)
- floor :: forall a b. (Integral b, RealFrac a) => a -> b
- fmap ::
- forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
- foldl ::
- forall (t :: * -> *) b a.
- Foldable t =>
- (b -> a -> b) -> b -> t a -> b
- foldl1 ::
- forall (t :: * -> *) a. Foldable t => (a -> a -> a) -> t a -> a
- foldr ::
- forall (t :: * -> *) a b.
- Foldable t =>
- (a -> b -> b) -> b -> t a -> b
- foldr1 ::
- forall (t :: * -> *) a. Foldable t => (a -> a -> a) -> t a -> a
- fromEnum :: forall a. Enum a => a -> Int
- fromInteger :: forall a. Num a => Integer -> a
- fromIntegral :: forall a b. (Integral a, Num b) => a -> b
- fromRational :: forall a. Fractional a => Rational -> a
- fst :: forall a b. (a, b) -> a
- gcd :: forall a. Integral a => a -> a -> a
- getChar :: IO Char
- getContents :: IO String
- getLine :: IO String
- head :: forall a. [a] -> a
- id :: forall a. a -> a
- init :: forall a. [a] -> [a]
- interact :: (String -> String) -> IO ()
- ioError :: forall a. IOError -> IO a
- isDenormalized :: forall a. RealFloat a => a -> Bool
- isIEEE :: forall a. RealFloat a => a -> Bool
- isInfinite :: forall a. RealFloat a => a -> Bool
- isNaN :: forall a. RealFloat a => a -> Bool
- isNegativeZero :: forall a. RealFloat a => a -> Bool
- iterate :: forall a. (a -> a) -> a -> [a]
- last :: forall a. [a] -> a
- lcm :: forall a. Integral a => a -> a -> a
- length :: forall (t :: * -> *) a. Foldable t => t a -> Int
- lex :: ReadS String
- lines :: String -> [String]
- log :: forall a. Floating a => a -> a
- logBase :: forall a. Floating a => a -> a -> a
- lookup :: forall a b. Eq a => a -> [(a, b)] -> Maybe b
- map :: forall a b. (a -> b) -> [a] -> [b]
- mapM ::
- forall (t :: * -> *) a (m :: * -> *) b.
- (Monad m, Traversable t) =>
- (a -> m b) -> t a -> m (t b)
- mapM_ ::
- forall a (m :: * -> *) b (t :: * -> *).
- (Monad m, Foldable t) =>
- (a -> m b) -> t a -> m ()
- max :: forall a. Ord a => a -> a -> a
- maxBound :: forall w_. Bounded w_ => w_
- maximum :: forall (t :: * -> *) a. (Ord a, Foldable t) => t a -> a
- maybe :: forall b a. b -> (a -> b) -> Maybe a -> b
- min :: forall a. Ord a => a -> a -> a
- minBound :: forall w_. Bounded w_ => w_
- minimum :: forall (t :: * -> *) a. (Ord a, Foldable t) => t a -> a
- mod :: forall a. Integral a => a -> a -> a
- negate :: forall a. Num a => a -> a
- not :: Bool -> Bool
- notElem ::
- forall a (t :: * -> *). (Eq a, Foldable t) => a -> t a -> Bool
- null :: forall (t :: * -> *) a. Foldable t => t a -> Bool
- odd :: forall a. Integral a => a -> Bool
- or :: forall (t :: * -> *). Foldable t => t Bool -> Bool
- otherwise :: Bool
- pi :: forall w_. Floating w_ => w_
- pred :: forall a. Enum a => a -> a
- print :: forall a. Show a => a -> IO ()
- product :: forall (t :: * -> *) a. (Num a, Foldable t) => t a -> a
- properFraction ::
- forall a b. (Integral b, RealFrac a) => a -> (b, a)
- putChar :: Char -> IO ()
- putStr :: String -> IO ()
- putStrLn :: String -> IO ()
- quot :: forall a. Integral a => a -> a -> a
- quotRem :: forall a. Integral a => a -> a -> (a, a)
- read :: forall a. Read a => String -> a
- readFile :: FilePath -> IO String
- readIO :: forall a. Read a => String -> IO a
- readList :: forall a. Read a => ReadS [a]
- readLn :: forall a. Read a => IO a
- readParen :: forall a. Bool -> ReadS a -> ReadS a
- reads :: forall a. Read a => ReadS a
- readsPrec :: forall a. Read a => Int -> ReadS a
- realToFrac :: forall a b. (Fractional b, Real a) => a -> b
- recip :: forall a. Fractional a => a -> a
- rem :: forall a. Integral a => a -> a -> a
- repeat :: forall a. a -> [a]
- replicate :: forall a. Int -> a -> [a]
- return :: forall (m :: * -> *) a. Monad m => a -> m a
- reverse :: forall a. [a] -> [a]
- round :: forall a b. (Integral b, RealFrac a) => a -> b
- scaleFloat :: forall a. RealFloat a => Int -> a -> a
- scanl :: forall b a. (b -> a -> b) -> b -> [a] -> [b]
- scanl1 :: forall a. (a -> a -> a) -> [a] -> [a]
- scanr :: forall a b. (a -> b -> b) -> b -> [a] -> [b]
- scanr1 :: forall a. (a -> a -> a) -> [a] -> [a]
- seq :: forall a b. a -> b -> b
- sequence ::
- forall (t :: * -> *) (m :: * -> *) a.
- (Monad m, Traversable t) =>
- t (m a) -> m (t a)
- sequence_ ::
- forall (t :: * -> *) (m :: * -> *) a.
- (Monad m, Foldable t) =>
- t (m a) -> m ()
- show :: forall a. Show a => a -> String
- showChar :: Char -> ShowS
- showList :: forall a. Show a => [a] -> ShowS
- showParen :: Bool -> ShowS -> ShowS
- showString :: String -> ShowS
- shows :: forall a. Show a => a -> ShowS
- showsPrec :: forall a. Show a => Int -> a -> ShowS
- significand :: forall a. RealFloat a => a -> a
- signum :: forall a. Num a => a -> a
- sin :: forall a. Floating a => a -> a
- sinh :: forall a. Floating a => a -> a
- snd :: forall a b. (a, b) -> b
- span :: forall a. (a -> Bool) -> [a] -> ([a], [a])
- splitAt :: forall a. Int -> [a] -> ([a], [a])
- sqrt :: forall a. Floating a => a -> a
- subtract :: forall a. Num a => a -> a -> a
- succ :: forall a. Enum a => a -> a
- sum :: forall (t :: * -> *) a. (Num a, Foldable t) => t a -> a
- tail :: forall a. [a] -> [a]
- take :: forall a. Int -> [a] -> [a]
- takeWhile :: forall a. (a -> Bool) -> [a] -> [a]
- tan :: forall a. Floating a => a -> a
- tanh :: forall a. Floating a => a -> a
- toEnum :: forall a. Enum a => Int -> a
- toInteger :: forall a. Integral a => a -> Integer
- toRational :: forall a. Real a => a -> Rational
- truncate :: forall a b. (Integral b, RealFrac a) => a -> b
- uncurry :: forall a b c. (a -> b -> c) -> (a, b) -> c
- undefined :: forall w_. w_
- unlines :: [String] -> String
- until :: forall a. (a -> Bool) -> (a -> a) -> a -> a
- unwords :: [String] -> String
- unzip :: forall a b. [(a, b)] -> ([a], [b])
- unzip3 :: forall a b c. [(a, b, c)] -> ([a], [b], [c])
- userError :: String -> IOError
- words :: String -> [String]
- writeFile :: FilePath -> String -> IO ()
- zip :: forall a b. [a] -> [b] -> [(a, b)]
- zip3 :: forall a b c. [a] -> [b] -> [c] -> [(a, b, c)]
- zipWith :: forall a b c. (a -> b -> c) -> [a] -> [b] -> [c]
- zipWith3 ::
- forall a b c d. (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
- || :: Bool -> Bool -> Bool
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ !! :: forall a. [a] -> Int -> a
+ $ :: forall a b. (a -> b) -> a -> b
+ $! :: forall a b. (a -> b) -> a -> b
+ && :: Bool -> Bool -> Bool
+ * :: forall a. Num a => a -> a -> a
+ ** :: forall a. Floating a => a -> a -> a
+ + :: forall a. Num a => a -> a -> a
+ ++ :: forall a. [a] -> [a] -> [a]
+ - :: forall a. Num a => a -> a -> a
+ . :: forall b c a. (b -> c) -> (a -> b) -> a -> c
+ / :: forall a. Fractional a => a -> a -> a
+ /= :: forall a. Eq a => a -> a -> Bool
+ < :: forall a. Ord a => a -> a -> Bool
+ <= :: forall a. Ord a => a -> a -> Bool
+ =<< ::
+ forall a (m :: * -> *) b. Monad m => (a -> m b) -> m a -> m b
+ == :: forall a. Eq a => a -> a -> Bool
+ > :: forall a. Ord a => a -> a -> Bool
+ >= :: forall a. Ord a => a -> a -> Bool
+ >> :: forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
+ >>= ::
+ forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
+ ^ :: forall a b. (Integral b, Num a) => a -> b -> a
+ ^^ :: forall a b. (Fractional a, Integral b) => a -> b -> a
+ abs :: forall a. Num a => a -> a
+ acos :: forall a. Floating a => a -> a
+ acosh :: forall a. Floating a => a -> a
+ all ::
+ forall a (t :: * -> *). Foldable t => (a -> Bool) -> t a -> Bool
+ and :: forall (t :: * -> *). Foldable t => t Bool -> Bool
+ any ::
+ forall a (t :: * -> *). Foldable t => (a -> Bool) -> t a -> Bool
+ appendFile :: FilePath -> String -> IO ()
+ asTypeOf :: forall a. a -> a -> a
+ asin :: forall a. Floating a => a -> a
+ asinh :: forall a. Floating a => a -> a
+ atan :: forall a. Floating a => a -> a
+ atan2 :: forall a. RealFloat a => a -> a -> a
+ atanh :: forall a. Floating a => a -> a
+ break :: forall a. (a -> Bool) -> [a] -> ([a], [a])
+ ceiling :: forall a b. (Integral b, RealFrac a) => a -> b
+ compare :: forall a. Ord a => a -> a -> Ordering
+ concat :: forall (t :: * -> *) a. Foldable t => t [a] -> [a]
+ concatMap ::
+ forall a b (t :: * -> *). Foldable t => (a -> [b]) -> t a -> [b]
+ const :: forall a b. a -> b -> a
+ cos :: forall a. Floating a => a -> a
+ cosh :: forall a. Floating a => a -> a
+ curry :: forall a b c. ((a, b) -> c) -> a -> b -> c
+ cycle :: forall a. [a] -> [a]
+ decodeFloat :: forall a. RealFloat a => a -> (Integer, Int)
+ div :: forall a. Integral a => a -> a -> a
+ divMod :: forall a. Integral a => a -> a -> (a, a)
+ drop :: forall a. Int -> [a] -> [a]
+ dropWhile :: forall a. (a -> Bool) -> [a] -> [a]
+ either :: forall a c b. (a -> c) -> (b -> c) -> Either a b -> c
+ elem ::
+ forall (t :: * -> *) a. (Eq a, Foldable t) => a -> t a -> Bool
+ encodeFloat :: forall a. RealFloat a => Integer -> Int -> a
+ enumFrom :: forall a. Enum a => a -> [a]
+ enumFromThen :: forall a. Enum a => a -> a -> [a]
+ enumFromThenTo :: forall a. Enum a => a -> a -> a -> [a]
+ enumFromTo :: forall a. Enum a => a -> a -> [a]
+ error :: forall a. [Char] -> a
+ even :: forall a. Integral a => a -> Bool
+ exp :: forall a. Floating a => a -> a
+ exponent :: forall a. RealFloat a => a -> Int
+ fail :: forall (m :: * -> *) a. Monad m => String -> m a
+ filter :: forall a. (a -> Bool) -> [a] -> [a]
+ flip :: forall a b c. (a -> b -> c) -> b -> a -> c
+ floatDigits :: forall a. RealFloat a => a -> Int
+ floatRadix :: forall a. RealFloat a => a -> Integer
+ floatRange :: forall a. RealFloat a => a -> (Int, Int)
+ floor :: forall a b. (Integral b, RealFrac a) => a -> b
+ fmap ::
+ forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
+ foldl ::
+ forall (t :: * -> *) b a.
+ Foldable t =>
+ (b -> a -> b) -> b -> t a -> b
+ foldl1 ::
+ forall (t :: * -> *) a. Foldable t => (a -> a -> a) -> t a -> a
+ foldr ::
+ forall (t :: * -> *) a b.
+ Foldable t =>
+ (a -> b -> b) -> b -> t a -> b
+ foldr1 ::
+ forall (t :: * -> *) a. Foldable t => (a -> a -> a) -> t a -> a
+ fromEnum :: forall a. Enum a => a -> Int
+ fromInteger :: forall a. Num a => Integer -> a
+ fromIntegral :: forall a b. (Integral a, Num b) => a -> b
+ fromRational :: forall a. Fractional a => Rational -> a
+ fst :: forall a b. (a, b) -> a
+ gcd :: forall a. Integral a => a -> a -> a
+ getChar :: IO Char
+ getContents :: IO String
+ getLine :: IO String
+ head :: forall a. [a] -> a
+ id :: forall a. a -> a
+ init :: forall a. [a] -> [a]
+ interact :: (String -> String) -> IO ()
+ ioError :: forall a. IOError -> IO a
+ isDenormalized :: forall a. RealFloat a => a -> Bool
+ isIEEE :: forall a. RealFloat a => a -> Bool
+ isInfinite :: forall a. RealFloat a => a -> Bool
+ isNaN :: forall a. RealFloat a => a -> Bool
+ isNegativeZero :: forall a. RealFloat a => a -> Bool
+ iterate :: forall a. (a -> a) -> a -> [a]
+ last :: forall a. [a] -> a
+ lcm :: forall a. Integral a => a -> a -> a
+ length :: forall (t :: * -> *) a. Foldable t => t a -> Int
+ lex :: ReadS String
+ lines :: String -> [String]
+ log :: forall a. Floating a => a -> a
+ logBase :: forall a. Floating a => a -> a -> a
+ lookup :: forall a b. Eq a => a -> [(a, b)] -> Maybe b
+ map :: forall a b. (a -> b) -> [a] -> [b]
+ mapM ::
+ forall (t :: * -> *) a (m :: * -> *) b.
+ (Monad m, Traversable t) =>
+ (a -> m b) -> t a -> m (t b)
+ mapM_ ::
+ forall a (m :: * -> *) b (t :: * -> *).
+ (Monad m, Foldable t) =>
+ (a -> m b) -> t a -> m ()
+ max :: forall a. Ord a => a -> a -> a
+ maxBound :: forall t. Bounded t => t
+ maximum :: forall (t :: * -> *) a. (Ord a, Foldable t) => t a -> a
+ maybe :: forall b a. b -> (a -> b) -> Maybe a -> b
+ min :: forall a. Ord a => a -> a -> a
+ minBound :: forall t. Bounded t => t
+ minimum :: forall (t :: * -> *) a. (Ord a, Foldable t) => t a -> a
+ mod :: forall a. Integral a => a -> a -> a
+ negate :: forall a. Num a => a -> a
+ not :: Bool -> Bool
+ notElem ::
+ forall a (t :: * -> *). (Eq a, Foldable t) => a -> t a -> Bool
+ null :: forall (t :: * -> *) a. Foldable t => t a -> Bool
+ odd :: forall a. Integral a => a -> Bool
+ or :: forall (t :: * -> *). Foldable t => t Bool -> Bool
+ otherwise :: Bool
+ pi :: forall t. Floating t => t
+ pred :: forall a. Enum a => a -> a
+ print :: forall a. Show a => a -> IO ()
+ product :: forall (t :: * -> *) a. (Num a, Foldable t) => t a -> a
+ properFraction ::
+ forall a b. (Integral b, RealFrac a) => a -> (b, a)
+ putChar :: Char -> IO ()
+ putStr :: String -> IO ()
+ putStrLn :: String -> IO ()
+ quot :: forall a. Integral a => a -> a -> a
+ quotRem :: forall a. Integral a => a -> a -> (a, a)
+ read :: forall a. Read a => String -> a
+ readFile :: FilePath -> IO String
+ readIO :: forall a. Read a => String -> IO a
+ readList :: forall a. Read a => ReadS [a]
+ readLn :: forall a. Read a => IO a
+ readParen :: forall a. Bool -> ReadS a -> ReadS a
+ reads :: forall a. Read a => ReadS a
+ readsPrec :: forall a. Read a => Int -> ReadS a
+ realToFrac :: forall a b. (Fractional b, Real a) => a -> b
+ recip :: forall a. Fractional a => a -> a
+ rem :: forall a. Integral a => a -> a -> a
+ repeat :: forall a. a -> [a]
+ replicate :: forall a. Int -> a -> [a]
+ return :: forall (m :: * -> *) a. Monad m => a -> m a
+ reverse :: forall a. [a] -> [a]
+ round :: forall a b. (Integral b, RealFrac a) => a -> b
+ scaleFloat :: forall a. RealFloat a => Int -> a -> a
+ scanl :: forall b a. (b -> a -> b) -> b -> [a] -> [b]
+ scanl1 :: forall a. (a -> a -> a) -> [a] -> [a]
+ scanr :: forall a b. (a -> b -> b) -> b -> [a] -> [b]
+ scanr1 :: forall a. (a -> a -> a) -> [a] -> [a]
+ seq :: forall a b. a -> b -> b
+ sequence ::
+ forall (t :: * -> *) (m :: * -> *) a.
+ (Monad m, Traversable t) =>
+ t (m a) -> m (t a)
+ sequence_ ::
+ forall (t :: * -> *) (m :: * -> *) a.
+ (Monad m, Foldable t) =>
+ t (m a) -> m ()
+ show :: forall a. Show a => a -> String
+ showChar :: Char -> ShowS
+ showList :: forall a. Show a => [a] -> ShowS
+ showParen :: Bool -> ShowS -> ShowS
+ showString :: String -> ShowS
+ shows :: forall a. Show a => a -> ShowS
+ showsPrec :: forall a. Show a => Int -> a -> ShowS
+ significand :: forall a. RealFloat a => a -> a
+ signum :: forall a. Num a => a -> a
+ sin :: forall a. Floating a => a -> a
+ sinh :: forall a. Floating a => a -> a
+ snd :: forall a b. (a, b) -> b
+ span :: forall a. (a -> Bool) -> [a] -> ([a], [a])
+ splitAt :: forall a. Int -> [a] -> ([a], [a])
+ sqrt :: forall a. Floating a => a -> a
+ subtract :: forall a. Num a => a -> a -> a
+ succ :: forall a. Enum a => a -> a
+ sum :: forall (t :: * -> *) a. (Num a, Foldable t) => t a -> a
+ tail :: forall a. [a] -> [a]
+ take :: forall a. Int -> [a] -> [a]
+ takeWhile :: forall a. (a -> Bool) -> [a] -> [a]
+ tan :: forall a. Floating a => a -> a
+ tanh :: forall a. Floating a => a -> a
+ toEnum :: forall a. Enum a => Int -> a
+ toInteger :: forall a. Integral a => a -> Integer
+ toRational :: forall a. Real a => a -> Rational
+ truncate :: forall a b. (Integral b, RealFrac a) => a -> b
+ uncurry :: forall a b c. (a -> b -> c) -> (a, b) -> c
+ undefined :: forall t. t
+ unlines :: [String] -> String
+ until :: forall a. (a -> Bool) -> (a -> a) -> a -> a
+ unwords :: [String] -> String
+ unzip :: forall a b. [(a, b)] -> ([a], [b])
+ unzip3 :: forall a b c. [(a, b, c)] -> ([a], [b], [c])
+ userError :: String -> IOError
+ words :: String -> [String]
+ writeFile :: FilePath -> String -> IO ()
+ zip :: forall a b. [a] -> [b] -> [(a, b)]
+ zip3 :: forall a b c. [a] -> [b] -> [c] -> [(a, b, c)]
+ zipWith :: forall a b c. (a -> b -> c) -> [a] -> [b] -> [c]
+ zipWith3 ::
+ forall a b c d. (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
+ || :: Bool -> Bool -> Bool
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr b/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr
index a986d76fa7..97eb78730c 100644
--- a/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr
@@ -1,7 +1,7 @@
-TYPE SIGNATURES
- showTwo :: forall w_a. Show w_a => w_a -> String
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ showTwo :: forall a. Show a => a -> String
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr b/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr
index e2b91c1c8c..8f2efacc84 100644
--- a/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr
@@ -1,7 +1,7 @@
-TYPE SIGNATURES
- bar :: forall w_. w_ -> Bool
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ bar :: forall t. t -> Bool
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/SplicesUsed.stderr b/testsuite/tests/partial-sigs/should_compile/SplicesUsed.stderr
index 312cf25217..de30497289 100644
--- a/testsuite/tests/partial-sigs/should_compile/SplicesUsed.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/SplicesUsed.stderr
@@ -1,73 +1,82 @@
-[1 of 2] Compiling Splices ( Splices.hs, Splices.o )
-[2 of 2] Compiling SplicesUsed ( SplicesUsed.hs, SplicesUsed.o )
-
-SplicesUsed.hs:7:16: warning:
- Found type wildcard ‘_’ standing for ‘Maybe Bool’
- In the type signature for ‘maybeBool’: _
-
-SplicesUsed.hs:8:15: warning:
- Found type wildcard ‘_a’ standing for ‘Maybe Bool’
- Relevant bindings include
- maybeBool :: Maybe Bool (bound at SplicesUsed.hs:8:1)
- In an expression type signature: _a -> _a
- In the expression: id :: _a -> _a
- In the expression: (id :: _a -> _a) (Just True :: Maybe _)
-
-SplicesUsed.hs:8:27: warning:
- Found type wildcard ‘_’ standing for ‘Bool’
- Relevant bindings include
- maybeBool :: Maybe Bool (bound at SplicesUsed.hs:8:1)
- In an expression type signature: Maybe _
- In the first argument of ‘id :: _a -> _a’, namely
- ‘(Just True :: Maybe _)’
- In the expression: (id :: _a -> _a) (Just True :: Maybe _)
-
-SplicesUsed.hs:10:17: warning:
- Found type wildcard ‘_’ standing for ‘(Char, a)’
- Where: ‘a’ is a rigid type variable bound by
- the inferred type of charA :: a -> (Char, a)
- at SplicesUsed.hs:10:10
- In the type signature for ‘charA’: a -> _
-
-SplicesUsed.hs:13:14: warning:
- Found type wildcard ‘_’ standing for ‘a -> Bool’
- Where: ‘a’ is a rigid type variable bound by
- the inferred type of filter' :: (a -> Bool) -> [a] -> [a]
- at SplicesUsed.hs:14:1
- In the type signature for ‘filter'’: _ -> _ -> _
-
-SplicesUsed.hs:13:14: warning:
- Found type wildcard ‘_’ standing for ‘[a]’
- Where: ‘a’ is a rigid type variable bound by
- the inferred type of filter' :: (a -> Bool) -> [a] -> [a]
- at SplicesUsed.hs:14:1
- In the type signature for ‘filter'’: _ -> _ -> _
-
-SplicesUsed.hs:13:14: warning:
- Found type wildcard ‘_’ standing for ‘[a]’
- Where: ‘a’ is a rigid type variable bound by
- the inferred type of filter' :: (a -> Bool) -> [a] -> [a]
- at SplicesUsed.hs:14:1
- In the type signature for ‘filter'’: _ -> _ -> _
-
-SplicesUsed.hs:16:3: warning:
- Found hole ‘_’ with inferred constraints: Eq a
- In the type signature for ‘foo’: _ => _
-
-SplicesUsed.hs:16:3: warning:
- Found type wildcard ‘_’ standing for ‘a -> a -> Bool’
- Where: ‘a’ is a rigid type variable bound by
- the inferred type of foo :: Eq a => a -> a -> Bool
- at SplicesUsed.hs:16:3
- In the type signature for ‘foo’: _ => _
-
-SplicesUsed.hs:18:3: warning:
- Found type wildcard ‘_a’ standing for ‘Bool’
- In the type signature for ‘bar’: _a -> _b -> (_a, _b)
-
-SplicesUsed.hs:18:3: warning:
- Found type wildcard ‘_b’ standing for ‘w_b’
- Where: ‘w_b’ is a rigid type variable bound by
- the inferred type of bar :: Bool -> w_b -> (Bool, w_b)
- at SplicesUsed.hs:18:3
- In the type signature for ‘bar’: _a -> _b -> (_a, _b)
+[1 of 2] Compiling Splices ( Splices.hs, Splices.o )
+[2 of 2] Compiling SplicesUsed ( SplicesUsed.hs, SplicesUsed.o )
+
+SplicesUsed.hs:7:16: warning:
+ Found type wildcard ‘_’ standing for ‘Maybe Bool’
+ In the type signature for:
+ maybeBool :: _
+
+SplicesUsed.hs:8:15: warning:
+ Found type wildcard ‘_a’ standing for ‘Maybe Bool’
+ Relevant bindings include
+ maybeBool :: Maybe Bool (bound at SplicesUsed.hs:8:1)
+ In an expression type signature: _a -> _a
+ In the expression: id :: _a -> _a
+ In the expression: (id :: _a -> _a) (Just True :: Maybe _)
+
+SplicesUsed.hs:8:27: warning:
+ Found type wildcard ‘_’ standing for ‘Bool’
+ Relevant bindings include
+ maybeBool :: Maybe Bool (bound at SplicesUsed.hs:8:1)
+ In an expression type signature: Maybe _
+ In the first argument of ‘id :: _a -> _a’, namely
+ ‘(Just True :: Maybe _)’
+ In the expression: (id :: _a -> _a) (Just True :: Maybe _)
+
+SplicesUsed.hs:10:17: warning:
+ Found type wildcard ‘_’ standing for ‘(Char, a)’
+ Where: ‘a’ is a rigid type variable bound by
+ the inferred type of charA :: a -> (Char, a)
+ at SplicesUsed.hs:10:10
+ In the type signature for:
+ charA :: a -> (_)
+
+SplicesUsed.hs:13:14: warning:
+ Found type wildcard ‘_’ standing for ‘a -> Bool’
+ Where: ‘a’ is a rigid type variable bound by
+ the inferred type of filter' :: (a -> Bool) -> [a] -> [a]
+ at SplicesUsed.hs:14:1
+ In the type signature for:
+ filter' :: _ -> _ -> _
+
+SplicesUsed.hs:13:14: warning:
+ Found type wildcard ‘_’ standing for ‘[a]’
+ Where: ‘a’ is a rigid type variable bound by
+ the inferred type of filter' :: (a -> Bool) -> [a] -> [a]
+ at SplicesUsed.hs:14:1
+ In the type signature for:
+ filter' :: _ -> _ -> _
+
+SplicesUsed.hs:13:14: warning:
+ Found type wildcard ‘_’ standing for ‘[a]’
+ Where: ‘a’ is a rigid type variable bound by
+ the inferred type of filter' :: (a -> Bool) -> [a] -> [a]
+ at SplicesUsed.hs:14:1
+ In the type signature for:
+ filter' :: _ -> _ -> _
+
+SplicesUsed.hs:16:3: warning:
+ Found hole ‘_’ with inferred constraints: Eq a
+ In the type signature for:
+ foo :: _ => _
+
+SplicesUsed.hs:16:3: warning:
+ Found type wildcard ‘_’ standing for ‘a -> a -> Bool’
+ Where: ‘a’ is a rigid type variable bound by
+ the inferred type of foo :: Eq a => a -> a -> Bool
+ at SplicesUsed.hs:16:3
+ In the type signature for:
+ foo :: _ => _
+
+SplicesUsed.hs:18:3: warning:
+ Found type wildcard ‘_a’ standing for ‘Bool’
+ In the type signature for:
+ bar :: _a -> _b -> (_a, _b)
+
+SplicesUsed.hs:18:3: warning:
+ Found type wildcard ‘_b’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: Bool -> t -> (Bool, t)
+ at SplicesUsed.hs:18:3
+ In the type signature for:
+ bar :: _a -> _b -> (_a, _b)
diff --git a/testsuite/tests/partial-sigs/should_compile/T10403.stderr b/testsuite/tests/partial-sigs/should_compile/T10403.stderr
index 389f676eaf..8af7da3d81 100644
--- a/testsuite/tests/partial-sigs/should_compile/T10403.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/T10403.stderr
@@ -1,36 +1,39 @@
-
-T10403.hs:15:7: warning:
- Found hole ‘_’ with inferred constraints: Functor f
- In the type signature for ‘h1’: _ => _
-
-T10403.hs:15:12: warning:
- Found type wildcard ‘_’ standing for ‘(a -> b) -> f a -> H f’
- Where: ‘f’ is a rigid type variable bound by
- the inferred type of h1 :: Functor f => (a -> b) -> f a -> H f
- at T10403.hs:17:1
- ‘b’ is a rigid type variable bound by
- the inferred type of h1 :: Functor f => (a -> b) -> f a -> H f
- at T10403.hs:17:1
- ‘a’ is a rigid type variable bound by
- the inferred type of h1 :: Functor f => (a -> b) -> f a -> H f
- at T10403.hs:17:1
- In the type signature for ‘h1’: _ => _
-
-T10403.hs:19:7: warning:
- Found type wildcard ‘_’ standing for ‘(a -> b) -> f a -> H f’
- Where: ‘f’ is a rigid type variable bound by
- the inferred type of h2 :: Functor f => (a -> b) -> f a -> H f
- at T10403.hs:21:1
- ‘b’ is a rigid type variable bound by
- the inferred type of h2 :: Functor f => (a -> b) -> f a -> H f
- at T10403.hs:21:1
- ‘a’ is a rigid type variable bound by
- the inferred type of h2 :: Functor f => (a -> b) -> f a -> H f
- at T10403.hs:21:1
- In the type signature for ‘h2’: _
-
-T10403.hs:21:1: warning:
- No instance for (Functor f)
- When checking that ‘h2’ has the inferred type
- h2 :: forall (f :: * -> *) b a. (a -> b) -> f a -> H f
- Probable cause: the inferred type is ambiguous
+
+T10403.hs:15:7: warning:
+ Found hole ‘_’ with inferred constraints: Functor f
+ In the type signature for:
+ h1 :: _ => _
+
+T10403.hs:15:12: warning:
+ Found type wildcard ‘_’ standing for ‘(a -> b) -> f a -> H f’
+ Where: ‘f’ is a rigid type variable bound by
+ the inferred type of h1 :: Functor f => (a -> b) -> f a -> H f
+ at T10403.hs:17:1
+ ‘b’ is a rigid type variable bound by
+ the inferred type of h1 :: Functor f => (a -> b) -> f a -> H f
+ at T10403.hs:17:1
+ ‘a’ is a rigid type variable bound by
+ the inferred type of h1 :: Functor f => (a -> b) -> f a -> H f
+ at T10403.hs:17:1
+ In the type signature for:
+ h1 :: _ => _
+
+T10403.hs:19:7: warning:
+ Found type wildcard ‘_’ standing for ‘(a -> b) -> f a -> H f’
+ Where: ‘f’ is a rigid type variable bound by
+ the inferred type of h2 :: Functor f => (a -> b) -> f a -> H f
+ at T10403.hs:21:1
+ ‘b’ is a rigid type variable bound by
+ the inferred type of h2 :: Functor f => (a -> b) -> f a -> H f
+ at T10403.hs:21:1
+ ‘a’ is a rigid type variable bound by
+ the inferred type of h2 :: Functor f => (a -> b) -> f a -> H f
+ at T10403.hs:21:1
+ In the type signature for:
+ h2 :: _
+
+T10403.hs:21:1: warning:
+ No instance for (Functor f)
+ When checking that ‘h2’ has the inferred type
+ h2 :: forall (f :: * -> *) b a. (a -> b) -> f a -> H f
+ Probable cause: the inferred type is ambiguous
diff --git a/testsuite/tests/partial-sigs/should_compile/T10438.stderr b/testsuite/tests/partial-sigs/should_compile/T10438.stderr
index 34fe24bba4..7c2a0907e8 100644
--- a/testsuite/tests/partial-sigs/should_compile/T10438.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/T10438.stderr
@@ -1,26 +1,27 @@
-
-T10438.hs:7:22: warning:
- Found type wildcard ‘_’ standing for ‘w_1’
- Where: ‘w_1’ is a rigid type variable bound by
- the inferred type of g :: w_1 -> w_1 at T10438.hs:6:9
- Relevant bindings include
- r :: w_1 (bound at T10438.hs:6:11)
- g :: w_1 -> w_1 (bound at T10438.hs:6:9)
- f :: t (bound at T10438.hs:5:5)
- foo :: t -> w_ -> w_ (bound at T10438.hs:5:1)
- In the type signature for ‘x’: _
- In an equation for ‘g’:
- g r
- = x
- where
- x :: _
- x = r
- In an equation for ‘foo’:
- foo f
- = g
- where
- g r
- = x
- where
- x :: _
- x = r
+
+T10438.hs:7:22: warning:
+ Found type wildcard ‘_’ standing for ‘t2’
+ Where: ‘t2’ is a rigid type variable bound by
+ the inferred type of g :: t2 -> t2 at T10438.hs:6:9
+ Relevant bindings include
+ r :: t2 (bound at T10438.hs:6:11)
+ g :: t2 -> t2 (bound at T10438.hs:6:9)
+ f :: t (bound at T10438.hs:5:5)
+ foo :: t -> t1 -> t1 (bound at T10438.hs:5:1)
+ In the type signature for:
+ x :: _
+ In an equation for ‘g’:
+ g r
+ = x
+ where
+ x :: _
+ x = r
+ In an equation for ‘foo’:
+ foo f
+ = g
+ where
+ g r
+ = x
+ where
+ x :: _
+ x = r
diff --git a/testsuite/tests/partial-sigs/should_compile/T10519.stderr b/testsuite/tests/partial-sigs/should_compile/T10519.stderr
index 254292f6b2..de53da2d33 100644
--- a/testsuite/tests/partial-sigs/should_compile/T10519.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/T10519.stderr
@@ -1,4 +1,5 @@
-
-T10519.hs:5:18: warning:
- Found hole ‘_’ with inferred constraints: Eq a
- In the type signature for ‘foo’: _ => a -> a -> Bool
+
+T10519.hs:5:18: warning:
+ Found hole ‘_’ with inferred constraints: Eq a
+ In the type signature for:
+ foo :: forall a. _ => a -> a -> Bool
diff --git a/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr b/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr
index 707bb9e770..6a4028402b 100644
--- a/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr
@@ -1,7 +1,7 @@
-TYPE SIGNATURES
- unc :: forall w_ w_1 w_2. (w_1 -> w_2 -> w_) -> (w_1, w_2) -> w_
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ unc :: forall t t1 t2. (t -> t1 -> t2) -> (t, t1) -> t2
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr b/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr
index e1b1bfdf1a..9048c1d524 100644
--- a/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr
@@ -1,7 +1,7 @@
-TYPE SIGNATURES
- unc :: forall w_a w_b w_c. (w_a -> w_b -> w_c) -> (w_a, w_b) -> w_c
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
+TYPE SIGNATURES
+ unc :: forall t a b. (a -> b -> t) -> (a, b) -> t
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr b/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr
index b259e32757..3037db7666 100644
--- a/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr
@@ -1,47 +1,53 @@
-TYPE SIGNATURES
- bar :: forall w_ w_1. w_ -> (w_ -> w_1) -> w_1
- foo :: forall w_a. (Show w_a, Enum w_a) => w_a -> String
-TYPE CONSTRUCTORS
-COERCION AXIOMS
-Dependent modules: []
-Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
- integer-gmp-1.0.0.0]
-
-WarningWildcardInstantiations.hs:5:14: warning:
- Found type wildcard ‘_a’ standing for ‘w_a’
- Where: ‘w_a’ is a rigid type variable bound by
- the inferred type of foo :: (Enum w_a, Show w_a) => w_a -> String
- at WarningWildcardInstantiations.hs:6:1
- In the type signature for ‘foo’: (Show _a, _) => _a -> _
-
-WarningWildcardInstantiations.hs:5:18: warning:
- Found hole ‘_’ with inferred constraints: Enum w_a
- In the type signature for ‘foo’: (Show _a, _) => _a -> _
-
-WarningWildcardInstantiations.hs:5:30: warning:
- Found type wildcard ‘_’ standing for ‘String’
- In the type signature for ‘foo’: (Show _a, _) => _a -> _
-
-WarningWildcardInstantiations.hs:8:8: warning:
- Found type wildcard ‘_’ standing for ‘w_’
- Where: ‘w_’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WarningWildcardInstantiations.hs:9:1
- In the type signature for ‘bar’: _ -> _ -> _
-
-WarningWildcardInstantiations.hs:8:13: warning:
- Found type wildcard ‘_’ standing for ‘w_ -> w_1’
- Where: ‘w_’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WarningWildcardInstantiations.hs:9:1
- ‘w_1’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WarningWildcardInstantiations.hs:9:1
- In the type signature for ‘bar’: _ -> _ -> _
-
-WarningWildcardInstantiations.hs:8:18: warning:
- Found type wildcard ‘_’ standing for ‘w_1’
- Where: ‘w_1’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WarningWildcardInstantiations.hs:9:1
- In the type signature for ‘bar’: _ -> _ -> _
+TYPE SIGNATURES
+ bar :: forall t t1. t -> (t -> t1) -> t1
+ foo :: forall a. (Show a, Enum a) => a -> String
+TYPE CONSTRUCTORS
+COERCION AXIOMS
+Dependent modules: []
+Dependent packages: [base-4.8.2.0, ghc-prim-0.4.0.0,
+ integer-gmp-1.0.0.0]
+
+WarningWildcardInstantiations.hs:5:14: warning:
+ Found type wildcard ‘_a’ standing for ‘a’
+ Where: ‘a’ is a rigid type variable bound by
+ the inferred type of foo :: (Enum a, Show a) => a -> String
+ at WarningWildcardInstantiations.hs:6:1
+ In the type signature for:
+ foo :: (Show _a, _) => _a -> _
+
+WarningWildcardInstantiations.hs:5:18: warning:
+ Found hole ‘_’ with inferred constraints: Enum a
+ In the type signature for:
+ foo :: (Show _a, _) => _a -> _
+
+WarningWildcardInstantiations.hs:5:30: warning:
+ Found type wildcard ‘_’ standing for ‘String’
+ In the type signature for:
+ foo :: (Show _a, _) => _a -> _
+
+WarningWildcardInstantiations.hs:8:8: warning:
+ Found type wildcard ‘_’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WarningWildcardInstantiations.hs:9:1
+ In the type signature for:
+ bar :: _ -> _ -> _
+
+WarningWildcardInstantiations.hs:8:13: warning:
+ Found type wildcard ‘_’ standing for ‘t -> t1’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WarningWildcardInstantiations.hs:9:1
+ ‘t1’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WarningWildcardInstantiations.hs:9:1
+ In the type signature for:
+ bar :: _ -> _ -> _
+
+WarningWildcardInstantiations.hs:8:18: warning:
+ Found type wildcard ‘_’ standing for ‘t1’
+ Where: ‘t1’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WarningWildcardInstantiations.hs:9:1
+ In the type signature for:
+ bar :: _ -> _ -> _
diff --git a/testsuite/tests/partial-sigs/should_fail/Defaulting1MROff.stderr b/testsuite/tests/partial-sigs/should_fail/Defaulting1MROff.stderr
index 560fe792db..43bd7b1938 100644
--- a/testsuite/tests/partial-sigs/should_fail/Defaulting1MROff.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/Defaulting1MROff.stderr
@@ -1,6 +1,6 @@
-
-Defaulting1MROff.hs:6:1:
- No instance for (Num w_)
- When checking that ‘alpha’ has the inferred type
- alpha :: forall w_. w_
- Probable cause: the inferred type is ambiguous
+
+Defaulting1MROff.hs:6:1: error:
+ No instance for (Num t)
+ When checking that ‘alpha’ has the inferred type
+ alpha :: forall t. t
+ Probable cause: the inferred type is ambiguous
diff --git a/testsuite/tests/partial-sigs/should_fail/ExtraConstraintsWildcardNotEnabled.stderr b/testsuite/tests/partial-sigs/should_fail/ExtraConstraintsWildcardNotEnabled.stderr
index 64839127c7..a8ea30ecf7 100644
--- a/testsuite/tests/partial-sigs/should_fail/ExtraConstraintsWildcardNotEnabled.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/ExtraConstraintsWildcardNotEnabled.stderr
@@ -1,5 +1,6 @@
-
-ExtraConstraintsWildcardNotEnabled.hs:4:10:
- Found hole ‘_’ with inferred constraints: Show a
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘show'’: _ => a -> String
+
+ExtraConstraintsWildcardNotEnabled.hs:4:10: error:
+ Found hole ‘_’ with inferred constraints: Show a
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ show' :: _ => a -> String
diff --git a/testsuite/tests/partial-sigs/should_fail/InstantiatedNamedWildcardsInConstraints.stderr b/testsuite/tests/partial-sigs/should_fail/InstantiatedNamedWildcardsInConstraints.stderr
index e2ba5c19c9..2bdc01e8ef 100644
--- a/testsuite/tests/partial-sigs/should_fail/InstantiatedNamedWildcardsInConstraints.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/InstantiatedNamedWildcardsInConstraints.stderr
@@ -1,13 +1,15 @@
-
-InstantiatedNamedWildcardsInConstraints.hs:4:14: error:
- Found type wildcard ‘_a’ standing for ‘b’
- Where: ‘b’ is a rigid type variable bound by
- the inferred type of foo :: (Enum b, Show b) => b -> (String, b)
- at InstantiatedNamedWildcardsInConstraints.hs:4:8
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: (Enum _a, _) => _a -> (String, b)
-
-InstantiatedNamedWildcardsInConstraints.hs:4:18: error:
- Found hole ‘_’ with inferred constraints: Show b
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: (Enum _a, _) => _a -> (String, b)
+
+InstantiatedNamedWildcardsInConstraints.hs:4:14: error:
+ Found type wildcard ‘_a’ standing for ‘b’
+ Where: ‘b’ is a rigid type variable bound by
+ the inferred type of foo :: (Enum b, Show b) => b -> (String, b)
+ at InstantiatedNamedWildcardsInConstraints.hs:4:8
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: (Enum _a, _) => _a -> (String, b)
+
+InstantiatedNamedWildcardsInConstraints.hs:4:18: error:
+ Found hole ‘_’ with inferred constraints: Show b
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: (Enum _a, _) => _a -> (String, b)
diff --git a/testsuite/tests/partial-sigs/should_fail/NamedWildcardsEnabled.stderr b/testsuite/tests/partial-sigs/should_fail/NamedWildcardsEnabled.stderr
index 5939ed79b0..6fa82994e4 100644
--- a/testsuite/tests/partial-sigs/should_fail/NamedWildcardsEnabled.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/NamedWildcardsEnabled.stderr
@@ -1,10 +1,12 @@
-
-NamedWildcardsEnabled.hs:4:8: error:
- Found type wildcard ‘_a’ standing for ‘Bool’
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: _a -> _b
-
-NamedWildcardsEnabled.hs:4:14: error:
- Found type wildcard ‘_b’ standing for ‘Bool’
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: _a -> _b
+
+NamedWildcardsEnabled.hs:4:8: error:
+ Found type wildcard ‘_a’ standing for ‘Bool’
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: _a -> _b
+
+NamedWildcardsEnabled.hs:4:14: error:
+ Found type wildcard ‘_b’ standing for ‘Bool’
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: _a -> _b
diff --git a/testsuite/tests/partial-sigs/should_fail/PartialTypeSignaturesDisabled.stderr b/testsuite/tests/partial-sigs/should_fail/PartialTypeSignaturesDisabled.stderr
index 5559c16969..fbff3580d0 100644
--- a/testsuite/tests/partial-sigs/should_fail/PartialTypeSignaturesDisabled.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/PartialTypeSignaturesDisabled.stderr
@@ -1,10 +1,12 @@
-
-PartialTypeSignaturesDisabled.hs:4:8: error:
- Found type wildcard ‘_’ standing for ‘Bool’
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: _ -> _
-
-PartialTypeSignaturesDisabled.hs:4:13: error:
- Found type wildcard ‘_’ standing for ‘Bool’
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: _ -> _
+
+PartialTypeSignaturesDisabled.hs:4:8: error:
+ Found type wildcard ‘_’ standing for ‘Bool’
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: _ -> _
+
+PartialTypeSignaturesDisabled.hs:4:13: error:
+ Found type wildcard ‘_’ standing for ‘Bool’
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: _ -> _
diff --git a/testsuite/tests/partial-sigs/should_fail/TidyClash.stderr b/testsuite/tests/partial-sigs/should_fail/TidyClash.stderr
index 11161be529..795789185e 100644
--- a/testsuite/tests/partial-sigs/should_fail/TidyClash.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/TidyClash.stderr
@@ -1,16 +1,16 @@
-
-TidyClash.hs:8:19: error:
- Found type wildcard ‘_’ standing for ‘w_’
- Where: ‘w_’ is a rigid type variable bound by
- the inferred type of bar :: w_2 -> (w_2, w_ -> w_1)
- at TidyClash.hs:9:1
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘bar’: w_ -> (w_, _ -> _)
-
-TidyClash.hs:8:24: error:
- Found type wildcard ‘_’ standing for ‘w_1’
- Where: ‘w_1’ is a rigid type variable bound by
- the inferred type of bar :: w_2 -> (w_2, w_ -> w_1)
- at TidyClash.hs:9:1
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘bar’: w_ -> (w_, _ -> _)
+
+TidyClash.hs:8:19: error:
+ Found type wildcard ‘_’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: w_ -> (w_, t -> t1) at TidyClash.hs:9:1
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ bar :: w_ -> (w_, _ -> _)
+
+TidyClash.hs:8:24: error:
+ Found type wildcard ‘_’ standing for ‘t1’
+ Where: ‘t1’ is a rigid type variable bound by
+ the inferred type of bar :: w_ -> (w_, t -> t1) at TidyClash.hs:9:1
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ bar :: w_ -> (w_, _ -> _)
diff --git a/testsuite/tests/partial-sigs/should_fail/Trac10045.stderr b/testsuite/tests/partial-sigs/should_fail/Trac10045.stderr
index 14302fb98d..da0f8c78b7 100644
--- a/testsuite/tests/partial-sigs/should_fail/Trac10045.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/Trac10045.stderr
@@ -1,45 +1,46 @@
-
-Trac10045.hs:6:17: error:
- Found type wildcard ‘_’ standing for ‘t1 -> a -> t2’
- Where: ‘t1’ is a rigid type variable bound by
- the inferred type of copy :: Num a => t1 -> a -> t2
- at Trac10045.hs:7:9
- ‘t2’ is a rigid type variable bound by
- the inferred type of copy :: Num a => t1 -> a -> t2
- at Trac10045.hs:7:9
- ‘a’ is a rigid type variable bound by
- the inferred type of copy :: Num a => t1 -> a -> t2
- at Trac10045.hs:7:9
- To use the inferred type, enable PartialTypeSignatures
- Relevant bindings include
- ws1 :: () (bound at Trac10045.hs:5:11)
- foo :: Meta -> t (bound at Trac10045.hs:5:1)
- In the type signature for ‘copy’: _
- In the expression:
- let
- copy :: _
- copy w from = copy w 1
- in copy ws1 1
- In an equation for ‘foo’:
- foo (Meta ws1)
- = let
- copy :: _
- copy w from = copy w 1
- in copy ws1 1
-
-Trac10045.hs:7:9: error:
- No instance for (Num a)
- When checking that ‘copy’ has the inferred type
- copy :: forall t t1 a. t -> a -> t1
- Probable cause: the inferred type is ambiguous
- In the expression:
- let
- copy :: _
- copy w from = copy w 1
- in copy ws1 1
- In an equation for ‘foo’:
- foo (Meta ws1)
- = let
- copy :: _
- copy w from = copy w 1
- in copy ws1 1
+
+Trac10045.hs:6:17: error:
+ Found type wildcard ‘_’ standing for ‘t1 -> a -> t2’
+ Where: ‘t1’ is a rigid type variable bound by
+ the inferred type of copy :: Num a => t1 -> a -> t2
+ at Trac10045.hs:7:9
+ ‘t2’ is a rigid type variable bound by
+ the inferred type of copy :: Num a => t1 -> a -> t2
+ at Trac10045.hs:7:9
+ ‘a’ is a rigid type variable bound by
+ the inferred type of copy :: Num a => t1 -> a -> t2
+ at Trac10045.hs:7:9
+ To use the inferred type, enable PartialTypeSignatures
+ Relevant bindings include
+ ws1 :: () (bound at Trac10045.hs:5:11)
+ foo :: Meta -> t (bound at Trac10045.hs:5:1)
+ In the type signature for:
+ copy :: _
+ In the expression:
+ let
+ copy :: _
+ copy w from = copy w 1
+ in copy ws1 1
+ In an equation for ‘foo’:
+ foo (Meta ws1)
+ = let
+ copy :: _
+ copy w from = copy w 1
+ in copy ws1 1
+
+Trac10045.hs:7:9: error:
+ No instance for (Num a)
+ When checking that ‘copy’ has the inferred type
+ copy :: forall t t1 a. t -> a -> t1
+ Probable cause: the inferred type is ambiguous
+ In the expression:
+ let
+ copy :: _
+ copy w from = copy w 1
+ in copy ws1 1
+ In an equation for ‘foo’:
+ foo (Meta ws1)
+ = let
+ copy :: _
+ copy w from = copy w 1
+ in copy ws1 1
diff --git a/testsuite/tests/partial-sigs/should_fail/WildcardInPatSynSig.stderr b/testsuite/tests/partial-sigs/should_fail/WildcardInPatSynSig.stderr
index 9a4aca1429..7dd2a20a77 100644
--- a/testsuite/tests/partial-sigs/should_fail/WildcardInPatSynSig.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/WildcardInPatSynSig.stderr
@@ -1,4 +1,5 @@
-
-WildcardInPatSynSig.hs:4:37:
- Unexpected wild card: ‘_’
- In the type signature for ‘Single’: Single :: _ -> [a]
+
+WildcardInPatSynSig.hs:4:37: error:
+ Unexpected wild card: ‘_’
+ In the type signature for pattern synonym ‘Single’:
+ Single :: _ -> [a]
diff --git a/testsuite/tests/partial-sigs/should_fail/WildcardInstantiations.stderr b/testsuite/tests/partial-sigs/should_fail/WildcardInstantiations.stderr
index b9442bb53c..d0d7dff480 100644
--- a/testsuite/tests/partial-sigs/should_fail/WildcardInstantiations.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/WildcardInstantiations.stderr
@@ -1,45 +1,51 @@
-
-WildcardInstantiations.hs:5:14: error:
- Found type wildcard ‘_a’ standing for ‘w_a’
- Where: ‘w_a’ is a rigid type variable bound by
- the inferred type of foo :: (Enum w_a, Show w_a) => w_a -> String
- at WildcardInstantiations.hs:6:1
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: (Show _a, _) => _a -> _
-
-WildcardInstantiations.hs:5:18: error:
- Found hole ‘_’ with inferred constraints: Enum w_a
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: (Show _a, _) => _a -> _
-
-WildcardInstantiations.hs:5:30: error:
- Found type wildcard ‘_’ standing for ‘String’
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘foo’: (Show _a, _) => _a -> _
-
-WildcardInstantiations.hs:8:8: error:
- Found type wildcard ‘_’ standing for ‘w_’
- Where: ‘w_’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WildcardInstantiations.hs:9:1
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘bar’: _ -> _ -> _
-
-WildcardInstantiations.hs:8:13: error:
- Found type wildcard ‘_’ standing for ‘w_ -> w_1’
- Where: ‘w_’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WildcardInstantiations.hs:9:1
- ‘w_1’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WildcardInstantiations.hs:9:1
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘bar’: _ -> _ -> _
-
-WildcardInstantiations.hs:8:18: error:
- Found type wildcard ‘_’ standing for ‘w_1’
- Where: ‘w_1’ is a rigid type variable bound by
- the inferred type of bar :: w_ -> (w_ -> w_1) -> w_1
- at WildcardInstantiations.hs:9:1
- To use the inferred type, enable PartialTypeSignatures
- In the type signature for ‘bar’: _ -> _ -> _
+
+WildcardInstantiations.hs:5:14: error:
+ Found type wildcard ‘_a’ standing for ‘a’
+ Where: ‘a’ is a rigid type variable bound by
+ the inferred type of foo :: (Enum a, Show a) => a -> String
+ at WildcardInstantiations.hs:6:1
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: (Show _a, _) => _a -> _
+
+WildcardInstantiations.hs:5:18: error:
+ Found hole ‘_’ with inferred constraints: Enum a
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: (Show _a, _) => _a -> _
+
+WildcardInstantiations.hs:5:30: error:
+ Found type wildcard ‘_’ standing for ‘String’
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ foo :: (Show _a, _) => _a -> _
+
+WildcardInstantiations.hs:8:8: error:
+ Found type wildcard ‘_’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WildcardInstantiations.hs:9:1
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ bar :: _ -> _ -> _
+
+WildcardInstantiations.hs:8:13: error:
+ Found type wildcard ‘_’ standing for ‘t -> t1’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WildcardInstantiations.hs:9:1
+ ‘t1’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WildcardInstantiations.hs:9:1
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ bar :: _ -> _ -> _
+
+WildcardInstantiations.hs:8:18: error:
+ Found type wildcard ‘_’ standing for ‘t1’
+ Where: ‘t1’ is a rigid type variable bound by
+ the inferred type of bar :: t -> (t -> t1) -> t1
+ at WildcardInstantiations.hs:9:1
+ To use the inferred type, enable PartialTypeSignatures
+ In the type signature for:
+ bar :: _ -> _ -> _
diff --git a/testsuite/tests/partial-sigs/should_fail/WildcardsInPatternAndExprSig.stderr b/testsuite/tests/partial-sigs/should_fail/WildcardsInPatternAndExprSig.stderr
index 90929b7c8f..97dacfe20a 100644
--- a/testsuite/tests/partial-sigs/should_fail/WildcardsInPatternAndExprSig.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/WildcardsInPatternAndExprSig.stderr
@@ -1,74 +1,74 @@
-
-WildcardsInPatternAndExprSig.hs:4:18: error:
- Found type wildcard ‘_a’ standing for ‘w_c’
- Where: ‘w_c’ is a rigid type variable bound by
- the inferred type of bar :: Maybe [w_c] -> w_c -> [w_c]
- at WildcardsInPatternAndExprSig.hs:4:1
- To use the inferred type, enable PartialTypeSignatures
- Relevant bindings include
- bar :: Maybe [w_c] -> w_c -> [w_c]
- (bound at WildcardsInPatternAndExprSig.hs:4:1)
- In a pattern type signature: _a
- In the pattern: x :: _a
- In the pattern: [x :: _a]
-
-WildcardsInPatternAndExprSig.hs:4:25: error:
- Found type wildcard ‘_’ standing for ‘[w_c]’
- Where: ‘w_c’ is a rigid type variable bound by
- the inferred type of bar :: Maybe [w_c] -> w_c -> [w_c]
- at WildcardsInPatternAndExprSig.hs:4:1
- To use the inferred type, enable PartialTypeSignatures
- Relevant bindings include
- bar :: Maybe [w_c] -> w_c -> [w_c]
- (bound at WildcardsInPatternAndExprSig.hs:4:1)
- In a pattern type signature: _
- In the pattern: [x :: _a] :: _
- In the pattern: Just ([x :: _a] :: _)
-
-WildcardsInPatternAndExprSig.hs:4:38: error:
- Found type wildcard ‘_b’ standing for ‘w_c’
- Where: ‘w_c’ is a rigid type variable bound by
- the inferred type of bar :: Maybe [w_c] -> w_c -> [w_c]
- at WildcardsInPatternAndExprSig.hs:4:1
- To use the inferred type, enable PartialTypeSignatures
- Relevant bindings include
- bar :: Maybe [w_c] -> w_c -> [w_c]
- (bound at WildcardsInPatternAndExprSig.hs:4:1)
- In a pattern type signature: Maybe [_b]
- In the pattern: Just ([x :: _a] :: _) :: Maybe [_b]
- In an equation for ‘bar’:
- bar (Just ([x :: _a] :: _) :: Maybe [_b]) (z :: _c)
- = [x, z] :: [_d]
-
-WildcardsInPatternAndExprSig.hs:4:49: error:
- Found type wildcard ‘_c’ standing for ‘w_c’
- Where: ‘w_c’ is a rigid type variable bound by
- the inferred type of bar :: Maybe [w_c] -> w_c -> [w_c]
- at WildcardsInPatternAndExprSig.hs:4:1
- To use the inferred type, enable PartialTypeSignatures
- Relevant bindings include
- x :: w_c (bound at WildcardsInPatternAndExprSig.hs:4:13)
- bar :: Maybe [w_c] -> w_c -> [w_c]
- (bound at WildcardsInPatternAndExprSig.hs:4:1)
- In a pattern type signature: _c
- In the pattern: z :: _c
- In an equation for ‘bar’:
- bar (Just ([x :: _a] :: _) :: Maybe [_b]) (z :: _c)
- = [x, z] :: [_d]
-
-WildcardsInPatternAndExprSig.hs:4:66: error:
- Found type wildcard ‘_d’ standing for ‘w_c’
- Where: ‘w_c’ is a rigid type variable bound by
- the inferred type of bar :: Maybe [w_c] -> w_c -> [w_c]
- at WildcardsInPatternAndExprSig.hs:4:1
- To use the inferred type, enable PartialTypeSignatures
- Relevant bindings include
- z :: w_c (bound at WildcardsInPatternAndExprSig.hs:4:44)
- x :: w_c (bound at WildcardsInPatternAndExprSig.hs:4:13)
- bar :: Maybe [w_c] -> w_c -> [w_c]
- (bound at WildcardsInPatternAndExprSig.hs:4:1)
- In an expression type signature: [_d]
- In the expression: [x, z] :: [_d]
- In an equation for ‘bar’:
- bar (Just ([x :: _a] :: _) :: Maybe [_b]) (z :: _c)
- = [x, z] :: [_d]
+
+WildcardsInPatternAndExprSig.hs:4:18: error:
+ Found type wildcard ‘_a’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: Maybe [t] -> t -> [t]
+ at WildcardsInPatternAndExprSig.hs:4:1
+ To use the inferred type, enable PartialTypeSignatures
+ Relevant bindings include
+ bar :: Maybe [t] -> t -> [t]
+ (bound at WildcardsInPatternAndExprSig.hs:4:1)
+ In a pattern type signature: _a
+ In the pattern: x :: _a
+ In the pattern: [x :: _a]
+
+WildcardsInPatternAndExprSig.hs:4:25: error:
+ Found type wildcard ‘_’ standing for ‘[t]’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: Maybe [t] -> t -> [t]
+ at WildcardsInPatternAndExprSig.hs:4:1
+ To use the inferred type, enable PartialTypeSignatures
+ Relevant bindings include
+ bar :: Maybe [t] -> t -> [t]
+ (bound at WildcardsInPatternAndExprSig.hs:4:1)
+ In a pattern type signature: _
+ In the pattern: [x :: _a] :: _
+ In the pattern: Just ([x :: _a] :: _)
+
+WildcardsInPatternAndExprSig.hs:4:38: error:
+ Found type wildcard ‘_b’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: Maybe [t] -> t -> [t]
+ at WildcardsInPatternAndExprSig.hs:4:1
+ To use the inferred type, enable PartialTypeSignatures
+ Relevant bindings include
+ bar :: Maybe [t] -> t -> [t]
+ (bound at WildcardsInPatternAndExprSig.hs:4:1)
+ In a pattern type signature: Maybe [_b]
+ In the pattern: Just ([x :: _a] :: _) :: Maybe [_b]
+ In an equation for ‘bar’:
+ bar (Just ([x :: _a] :: _) :: Maybe [_b]) (z :: _c)
+ = [x, z] :: [_d]
+
+WildcardsInPatternAndExprSig.hs:4:49: error:
+ Found type wildcard ‘_c’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: Maybe [t] -> t -> [t]
+ at WildcardsInPatternAndExprSig.hs:4:1
+ To use the inferred type, enable PartialTypeSignatures
+ Relevant bindings include
+ x :: t (bound at WildcardsInPatternAndExprSig.hs:4:13)
+ bar :: Maybe [t] -> t -> [t]
+ (bound at WildcardsInPatternAndExprSig.hs:4:1)
+ In a pattern type signature: _c
+ In the pattern: z :: _c
+ In an equation for ‘bar’:
+ bar (Just ([x :: _a] :: _) :: Maybe [_b]) (z :: _c)
+ = [x, z] :: [_d]
+
+WildcardsInPatternAndExprSig.hs:4:66: error:
+ Found type wildcard ‘_d’ standing for ‘t’
+ Where: ‘t’ is a rigid type variable bound by
+ the inferred type of bar :: Maybe [t] -> t -> [t]
+ at WildcardsInPatternAndExprSig.hs:4:1
+ To use the inferred type, enable PartialTypeSignatures
+ Relevant bindings include
+ z :: t (bound at WildcardsInPatternAndExprSig.hs:4:44)
+ x :: t (bound at WildcardsInPatternAndExprSig.hs:4:13)
+ bar :: Maybe [t] -> t -> [t]
+ (bound at WildcardsInPatternAndExprSig.hs:4:1)
+ In an expression type signature: [_d]
+ In the expression: [x, z] :: [_d]
+ In an equation for ‘bar’:
+ bar (Just ([x :: _a] :: _) :: Maybe [_b]) (z :: _c)
+ = [x, z] :: [_d]
diff --git a/testsuite/tests/typecheck/should_compile/T10072.stderr b/testsuite/tests/typecheck/should_compile/T10072.stderr
index 8e05ebda32..ba15398874 100644
--- a/testsuite/tests/typecheck/should_compile/T10072.stderr
+++ b/testsuite/tests/typecheck/should_compile/T10072.stderr
@@ -1,8 +1,8 @@
-
-T10072.hs:3:31: error:
- Found type wildcard ‘_’ standing for ‘w_’
- Where: ‘w_’ is a rigid type variable bound by
- the RULE "map/empty" at T10072.hs:3:1
- To use the inferred type, enable PartialTypeSignatures
- In a RULE for ‘f’: a -> _
- When checking the transformation rule "map/empty"
+
+T10072.hs:3:31: error:
+ Found type wildcard ‘_’ standing for ‘b’
+ Where: ‘b’ is a rigid type variable bound by
+ the RULE "map/empty" at T10072.hs:3:1
+ To use the inferred type, enable PartialTypeSignatures
+ In a RULE for ‘f’: a -> _
+ When checking the transformation rule "map/empty"
diff --git a/testsuite/tests/typecheck/should_fail/tcfail198.stderr b/testsuite/tests/typecheck/should_fail/tcfail198.stderr
index 76557906ba..ea764fc846 100644
--- a/testsuite/tests/typecheck/should_fail/tcfail198.stderr
+++ b/testsuite/tests/typecheck/should_fail/tcfail198.stderr
@@ -1,13 +1,13 @@
-
-tcfail198.hs:6:36:
- Couldn't match expected type ‘a1’ with actual type ‘a’
- because type variable ‘a1’ would escape its scope
- This (rigid, skolem) type variable is bound by
- an expression type signature: a1
- at tcfail198.hs:6:36-41
- Relevant bindings include
- xs :: [a] (bound at tcfail198.hs:6:21)
- x :: a (bound at tcfail198.hs:6:19)
- f3 :: [a] -> [a] (bound at tcfail198.hs:6:6)
- In the expression: x :: a
- In the second argument of ‘(++)’, namely ‘[x :: a]’
+
+tcfail198.hs:6:36: error:
+ Couldn't match expected type ‘a2’ with actual type ‘a1’
+ because type variable ‘a2’ would escape its scope
+ This (rigid, skolem) type variable is bound by
+ an expression type signature: a2
+ at tcfail198.hs:6:36-41
+ Relevant bindings include
+ xs :: [a1] (bound at tcfail198.hs:6:21)
+ x :: a1 (bound at tcfail198.hs:6:19)
+ f3 :: [a1] -> [a1] (bound at tcfail198.hs:6:6)
+ In the expression: x :: a
+ In the second argument of ‘(++)’, namely ‘[x :: a]’