1 without -fprint-explicit-foralls
2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 pattern P :: Bool       -- Defined at <interactive>:16:1
4 pattern Pe :: a -> Ex   -- Defined at <interactive>:17:1
5 pattern Pu :: p -> p    -- Defined at <interactive>:18:1
6 pattern Pue :: a -> a1 -> (a, Ex)       -- Defined at <interactive>:19:1
7 pattern Pur :: (Num a, Eq a) => a -> [a]
8         -- Defined at <interactive>:20:1
9 pattern Purp :: (Num a1, Eq a1) => Show a => a1
10                                              -> a -> ([a1], UnivProv a)
11         -- Defined at <interactive>:21:1
12 pattern Pure :: (Num a, Eq a) => a -> a1 -> ([a], Ex)
13         -- Defined at <interactive>:22:1
14 pattern Purep :: (Num a, Eq a) => Show a1 => a
15                                              -> a1 -> ([a], ExProv)
16         -- Defined at <interactive>:23:1
17 pattern Pep :: () => Show a => a -> ExProv
18         -- Defined at <interactive>:24:1
19 pattern Pup :: () => Show a => a -> UnivProv a
20         -- Defined at <interactive>:25:1
21 pattern Puep :: () => Show a => a -> b -> (ExProv, b)
22         -- Defined at <interactive>:26:1
24 with -fprint-explicit-foralls
25 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26 pattern P :: Bool       -- Defined at <interactive>:16:1
27 pattern Pe :: () => forall {a}. a -> Ex
28         -- Defined at <interactive>:17:1
29 pattern Pu :: forall {p}. p -> p        -- Defined at <interactive>:18:1
30 pattern Pue :: forall {a}. () => forall {a1}. a -> a1 -> (a, Ex)
31         -- Defined at <interactive>:19:1
32 pattern Pur :: forall {a}. (Num a, Eq a) => a -> [a]
33         -- Defined at <interactive>:20:1
34 pattern Purp :: forall {a} {a1}. (Num a1, Eq a1) => Show a => a1
35                                                               -> a -> ([a1], UnivProv a)
36         -- Defined at <interactive>:21:1
37 pattern Pure :: forall {a}. (Num a, Eq a) => forall {a1}. a
38                                                           -> a1 -> ([a], Ex)
39         -- Defined at <interactive>:22:1
40 pattern Purep :: forall {a}. (Num a, Eq a) => forall {a1}. Show
41                                                              a1 => a -> a1 -> ([a], ExProv)
42         -- Defined at <interactive>:23:1
43 pattern Pep :: () => forall {a}. Show a => a -> ExProv
44         -- Defined at <interactive>:24:1
45 pattern Pup :: forall {a}. () => Show a => a -> UnivProv a
46         -- Defined at <interactive>:25:1
47 pattern Puep :: forall {b}. () => forall {a}. Show a => a
48                                                         -> b -> (ExProv, b)
49         -- Defined at <interactive>:26:1