summaryrefslogtreecommitdiff
path: root/testsuite/tests/partial-sigs
diff options
context:
space:
mode:
authorKrzysztof Gogolewski <krzysztof.gogolewski@tweag.io>2020-02-03 21:17:11 +0100
committerKrzysztof Gogolewski <krzysztof.gogolewski@tweag.io>2020-02-12 23:58:52 +0100
commitdf08468113ab46832b7ac0a7311b608d1b418c4d (patch)
treede3a0ed40b58162976e4831625471b5702b2121f /testsuite/tests/partial-sigs
parent6c2585e0816cb49487fa6a2be5b8e3f191cf3438 (diff)
downloadhaskell-df08468113ab46832b7ac0a7311b608d1b418c4d.tar.gz
Always display inferred variables using braces
We now always show "forall {a}. T" for inferred variables, previously this was controlled by -fprint-explicit-foralls. This implements part 1 of https://github.com/ghc-proposals/ghc-proposals/pull/179. Part of GHC ticket #16320. Furthermore, when printing a levity restriction error, we now display the HsWrap of the expression. This lets users see the full elaboration with -fprint-typechecker-elaboration (see also #17670)
Diffstat (limited to 'testsuite/tests/partial-sigs')
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Defaulting2MROn.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Either.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Every.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr352
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Meltdown.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/PatBind.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/SkipMany.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/Uncurry.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr4
-rw-r--r--testsuite/tests/partial-sigs/should_fail/NamedExtraConstraintsWildcard.stderr4
-rw-r--r--testsuite/tests/partial-sigs/should_fail/NamedWildcardsNotInMonotype.stderr4
-rw-r--r--testsuite/tests/partial-sigs/should_fail/T14584a.stderr2
17 files changed, 199 insertions, 191 deletions
diff --git a/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr b/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr
index 37ada9e6bc..4332d07a03 100644
--- a/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Defaulting2MROff.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- bravo :: forall _. Num _ => _
+ bravo :: forall {_}. Num _ => _
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/Defaulting2MROn.stderr b/testsuite/tests/partial-sigs/should_compile/Defaulting2MROn.stderr
index 37ada9e6bc..4332d07a03 100644
--- a/testsuite/tests/partial-sigs/should_compile/Defaulting2MROn.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Defaulting2MROn.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- bravo :: forall _. Num _ => _
+ bravo :: forall {_}. Num _ => _
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/Either.stderr b/testsuite/tests/partial-sigs/should_compile/Either.stderr
index d7a636413c..f5f54d209e 100644
--- a/testsuite/tests/partial-sigs/should_compile/Either.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Either.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- barry :: forall _. _ -> (Either [Char] _, Either [Char] _)
+ barry :: forall {_}. _ -> (Either [Char] _, Either [Char] _)
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/Every.stderr b/testsuite/tests/partial-sigs/should_compile/Every.stderr
index 3e33dcbf48..d9f69686e1 100644
--- a/testsuite/tests/partial-sigs/should_compile/Every.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Every.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- every :: forall t. (t -> Bool) -> [t] -> Bool
+ every :: forall {t}. (t -> Bool) -> [t] -> Bool
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr b/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr
index 3cbaff90ac..28c25b80b6 100644
--- a/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/EveryNamed.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- every :: forall _. (_ -> Bool) -> [_] -> Bool
+ every :: forall {_}. (_ -> Bool) -> [_] -> Bool
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr b/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr
index 064c995300..3b94743dbb 100644
--- a/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/ExtraConstraints3.stderr
@@ -1,231 +1,239 @@
TYPE SIGNATURES
- !! :: forall a. [a] -> Int -> a
- $ :: forall a b. (a -> b) -> a -> b
- $! :: forall a b. (a -> b) -> a -> b
+ !! :: 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}. 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 (m :: * -> *) a 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 => (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 b a. (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
+ forall {m :: * -> *} {a} {b}. Monad m => m a -> (a -> m b) -> m b
+ ^ :: forall {b} {a}. (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 (t :: * -> *) a. P.Foldable t => (a -> Bool) -> t a -> Bool
- and :: forall (t :: * -> *). P.Foldable t => t Bool -> Bool
+ forall {t :: * -> *} {a}.
+ P.Foldable t =>
+ (a -> Bool) -> t a -> Bool
+ and :: forall {t :: * -> *}. P.Foldable t => t Bool -> Bool
any ::
- forall (t :: * -> *) a. P.Foldable t => (a -> Bool) -> t a -> Bool
+ forall {t :: * -> *} {a}.
+ P.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. (RealFrac a, Integral b) => a -> b
- compare :: forall a. Ord a => a -> a -> Ordering
- concat :: forall (t :: * -> *) a. P.Foldable t => t [a] -> [a]
+ 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}. (RealFrac a, Integral b) => a -> b
+ compare :: forall {a}. Ord a => a -> a -> Ordering
+ concat :: forall {t :: * -> *} {a}. P.Foldable t => t [a] -> [a]
concatMap ::
- forall (t :: * -> *) a b. P.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
+ forall {t :: * -> *} {a} {b}.
+ P.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. (P.Foldable t, Eq a) => 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. P.MonadFail 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. (RealFrac a, Integral b) => a -> b
+ forall {t :: * -> *} {a}. (P.Foldable t, Eq a) => 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}. P.MonadFail 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}. (RealFrac a, Integral b) => a -> b
fmap ::
- forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
+ forall {f :: * -> *} {a} {b}. Functor f => (a -> b) -> f a -> f b
foldl ::
- forall (t :: * -> *) b a.
+ forall {t :: * -> *} {b} {a}.
P.Foldable t =>
(b -> a -> b) -> b -> t a -> b
foldl1 ::
- forall (t :: * -> *) a. P.Foldable t => (a -> a -> a) -> t a -> a
+ forall {t :: * -> *} {a}. P.Foldable t => (a -> a -> a) -> t a -> a
foldr ::
- forall (t :: * -> *) a b.
+ forall {t :: * -> *} {a} {b}.
P.Foldable t =>
(a -> b -> b) -> b -> t a -> b
foldr1 ::
- forall (t :: * -> *) a. P.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
+ forall {t :: * -> *} {a}. P.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]
+ 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. P.Foldable t => t a -> Int
+ 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}. P.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]
+ 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 :: * -> *) (m :: * -> *) a b.
+ forall {t :: * -> *} {m :: * -> *} {a} {b}.
(P.Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
mapM_ ::
- forall (t :: * -> *) (m :: * -> *) a b.
+ forall {t :: * -> *} {m :: * -> *} {a} {b}.
(P.Foldable t, Monad m) =>
(a -> m b) -> t a -> m ()
- max :: forall a. Ord a => a -> a -> a
- maxBound :: forall _. Bounded _ => _
+ max :: forall {a}. Ord a => a -> a -> a
+ maxBound :: forall {_}. Bounded _ => _
maximum ::
- forall (t :: * -> *) a. (P.Foldable t, Ord a) => t a -> a
- maybe :: forall b a. b -> (a -> b) -> Maybe a -> b
- min :: forall a. Ord a => a -> a -> a
- minBound :: forall _. Bounded _ => _
+ forall {t :: * -> *} {a}. (P.Foldable t, Ord a) => t a -> a
+ maybe :: forall {b} {a}. b -> (a -> b) -> Maybe a -> b
+ min :: forall {a}. Ord a => a -> a -> a
+ minBound :: forall {_}. Bounded _ => _
minimum ::
- forall (t :: * -> *) a. (P.Foldable t, Ord a) => t a -> a
- mod :: forall a. Integral a => a -> a -> a
- negate :: forall a. Num a => a -> a
+ forall {t :: * -> *} {a}. (P.Foldable t, Ord a) => t a -> a
+ mod :: forall {a}. Integral a => a -> a -> a
+ negate :: forall {a}. Num a => a -> a
not :: Bool -> Bool
notElem ::
- forall (t :: * -> *) a. (P.Foldable t, Eq a) => a -> t a -> Bool
- null :: forall (t :: * -> *) a. P.Foldable t => t a -> Bool
- odd :: forall a. Integral a => a -> Bool
- or :: forall (t :: * -> *). P.Foldable t => t Bool -> Bool
+ forall {t :: * -> *} {a}. (P.Foldable t, Eq a) => a -> t a -> Bool
+ null :: forall {t :: * -> *} {a}. P.Foldable t => t a -> Bool
+ odd :: forall {a}. Integral a => a -> Bool
+ or :: forall {t :: * -> *}. P.Foldable t => t Bool -> Bool
otherwise :: Bool
- pi :: forall _. Floating _ => _
- pred :: forall a. Enum a => a -> a
- print :: forall a. Show a => a -> IO ()
+ pi :: forall {_}. Floating _ => _
+ pred :: forall {a}. Enum a => a -> a
+ print :: forall {a}. Show a => a -> IO ()
product ::
- forall (t :: * -> *) a. (P.Foldable t, Num a) => t a -> a
+ forall {t :: * -> *} {a}. (P.Foldable t, Num a) => t a -> a
properFraction ::
- forall a b. (RealFrac a, Integral b) => a -> (b, a)
+ forall {a} {b}. (RealFrac a, Integral b) => 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
+ 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. (Real a, Fractional b) => 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. (RealFrac a, Integral b) => 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
+ 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}. (Real a, Fractional b) => 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}. (RealFrac a, Integral b) => 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.
+ forall {t :: * -> *} {m :: * -> *} {a}.
(P.Traversable t, Monad m) =>
t (m a) -> m (t a)
sequence_ ::
- forall (t :: * -> *) (m :: * -> *) a.
+ forall {t :: * -> *} {m :: * -> *} {a}.
(P.Foldable t, Monad m) =>
t (m a) -> m ()
- show :: forall a. Show a => a -> String
+ show :: forall {a}. Show a => a -> String
showChar :: Char -> ShowS
- showList :: forall a. Show a => [a] -> 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. (P.Foldable t, Num a) => 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. (RealFrac a, Integral b) => a -> b
- uncurry :: forall a b c. (a -> b -> c) -> (a, b) -> c
- undefined :: forall _. _
+ 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}. (P.Foldable t, Num a) => 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}. (RealFrac a, Integral b) => a -> b
+ uncurry :: forall {a} {b} {c}. (a -> b -> c) -> (a, b) -> c
+ undefined :: forall {_}. _
unlines :: [String] -> String
- until :: forall a. (a -> Bool) -> (a -> a) -> a -> a
+ 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])
+ 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]
+ 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]
+ forall {a} {b} {c} {d}.
+ (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
|| :: Bool -> Bool -> Bool
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
diff --git a/testsuite/tests/partial-sigs/should_compile/Meltdown.stderr b/testsuite/tests/partial-sigs/should_compile/Meltdown.stderr
index 025fa95a42..6380befcc2 100644
--- a/testsuite/tests/partial-sigs/should_compile/Meltdown.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Meltdown.stderr
@@ -1,7 +1,7 @@
TYPE SIGNATURES
isMeltdown :: forall param1 param2. NukeMonad param1 param2 Bool
unlessMeltdown ::
- forall param1 param2.
+ forall {param1} {param2}.
NukeMonad param1 param2 () -> NukeMonad param1 param2 ()
TYPE CONSTRUCTORS
data type NukeMonad{3} :: * -> * -> * -> *
diff --git a/testsuite/tests/partial-sigs/should_compile/PatBind.stderr b/testsuite/tests/partial-sigs/should_compile/PatBind.stderr
index de26dc9d80..1f71b4f434 100644
--- a/testsuite/tests/partial-sigs/should_compile/PatBind.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/PatBind.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- foo :: forall a. a -> a
+ foo :: forall {a}. a -> a
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr b/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr
index 86054ed585..8ca152fd92 100644
--- a/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/ShowNamed.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- showTwo :: forall a. Show a => a -> String
+ showTwo :: forall {a}. Show a => a -> String
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr b/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr
index 34903a93cf..49e98e3b0d 100644
--- a/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/SimpleGen.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- bar :: forall _. _ -> Bool
+ bar :: forall {_}. _ -> Bool
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/SkipMany.stderr b/testsuite/tests/partial-sigs/should_compile/SkipMany.stderr
index da0aa8ed9e..4a205f9ca5 100644
--- a/testsuite/tests/partial-sigs/should_compile/SkipMany.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/SkipMany.stderr
@@ -1,6 +1,6 @@
TYPE SIGNATURES
skipMany ::
- forall tok st a. GenParser tok st a -> GenParser tok st ()
+ forall {tok} {st} {a}. GenParser tok st a -> GenParser tok st ()
skipMany' ::
forall tok st a. GenParser tok st a -> GenParser tok st ()
TYPE CONSTRUCTORS
diff --git a/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr b/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr
index 68bec65094..0499a2eb93 100644
--- a/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/Uncurry.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- unc :: forall _1 _2 _3. (_1 -> _2 -> _3) -> (_1, _2) -> _3
+ unc :: forall {_1} {_2} {_3}. (_1 -> _2 -> _3) -> (_1, _2) -> _3
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr b/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr
index 9d5f8e20be..62ae68aef0 100644
--- a/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/UncurryNamed.stderr
@@ -1,5 +1,5 @@
TYPE SIGNATURES
- unc :: forall a b _. (a -> b -> _) -> (a, b) -> _
+ unc :: forall {a} {b} {_}. (a -> b -> _) -> (a, b) -> _
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr b/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr
index 4dbb77b300..8cfb1f2fe0 100644
--- a/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr
+++ b/testsuite/tests/partial-sigs/should_compile/WarningWildcardInstantiations.stderr
@@ -1,6 +1,6 @@
TYPE SIGNATURES
- bar :: forall t _. t -> (t -> _) -> _
- foo :: forall a. (Show a, Enum a) => a -> String
+ bar :: forall {t} {_}. t -> (t -> _) -> _
+ foo :: forall {a}. (Show a, Enum a) => a -> String
Dependent modules: []
Dependent packages: [base-4.13.0.0, ghc-prim-0.6.1,
integer-gmp-1.0.2.0]
diff --git a/testsuite/tests/partial-sigs/should_fail/NamedExtraConstraintsWildcard.stderr b/testsuite/tests/partial-sigs/should_fail/NamedExtraConstraintsWildcard.stderr
index c573747c02..84d61eda91 100644
--- a/testsuite/tests/partial-sigs/should_fail/NamedExtraConstraintsWildcard.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/NamedExtraConstraintsWildcard.stderr
@@ -3,9 +3,9 @@ NamedExtraConstraintsWildcard.hs:5:1: error:
• Could not deduce: _0
from the context: (Eq a, _)
bound by the inferred type for ‘foo’:
- forall a (_ :: Constraint). (Eq a, _) => a -> a
+ forall a {_ :: Constraint}. (Eq a, _) => a -> a
at NamedExtraConstraintsWildcard.hs:5:1-15
• In the ambiguity check for the inferred type for ‘foo’
To defer the ambiguity check to use sites, enable AllowAmbiguousTypes
When checking the inferred type
- foo :: forall a (_ :: Constraint). (Eq a, _) => a -> a
+ foo :: forall a {_ :: Constraint}. (Eq a, _) => a -> a
diff --git a/testsuite/tests/partial-sigs/should_fail/NamedWildcardsNotInMonotype.stderr b/testsuite/tests/partial-sigs/should_fail/NamedWildcardsNotInMonotype.stderr
index 89b71e5959..6a1d0edbb4 100644
--- a/testsuite/tests/partial-sigs/should_fail/NamedWildcardsNotInMonotype.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/NamedWildcardsNotInMonotype.stderr
@@ -3,10 +3,10 @@ NamedWildcardsNotInMonotype.hs:5:1: error:
• Could not deduce (Eq _0)
from the context: (Show a, Eq _, Eq a)
bound by the inferred type for ‘foo’:
- forall a _. (Show a, Eq _, Eq a) => a -> a -> String
+ forall {a} {_}. (Show a, Eq _, Eq a) => a -> a -> String
at NamedWildcardsNotInMonotype.hs:5:1-33
The type variable ‘_0’ is ambiguous
• In the ambiguity check for the inferred type for ‘foo’
To defer the ambiguity check to use sites, enable AllowAmbiguousTypes
When checking the inferred type
- foo :: forall a _. (Show a, Eq _, Eq a) => a -> a -> String
+ foo :: forall {a} {_}. (Show a, Eq _, Eq a) => a -> a -> String
diff --git a/testsuite/tests/partial-sigs/should_fail/T14584a.stderr b/testsuite/tests/partial-sigs/should_fail/T14584a.stderr
index 5687dcec51..8c98b76ae2 100644
--- a/testsuite/tests/partial-sigs/should_fail/T14584a.stderr
+++ b/testsuite/tests/partial-sigs/should_fail/T14584a.stderr
@@ -14,7 +14,7 @@ T14584a.hs:12:14: warning: [-Wpartial-type-signatures (in -Wdefault)]
• Found type wildcard ‘_’ standing for ‘m -> m’
Where: ‘m’, ‘k’ are rigid type variables bound by
the type signature for:
- f :: forall k2 (m :: k2). ()
+ f :: forall {k2} (m :: k2). ()
at T14584a.hs:11:1-17
• In an expression type signature: _
In the expression: id @m :: _