summaryrefslogtreecommitdiff
path: root/testsuite/tests/ghci/scripts/T11524a.stdout
diff options
context:
space:
mode:
authorRik Steenkamp <rik@ewps.nl>2016-03-05 20:01:06 +0100
committerBen Gamari <ben@smart-cactus.org>2016-03-05 20:02:13 +0100
commit3801262e89957a0fceeec0c5683045cf327aac64 (patch)
tree310df394b209dbe58c6264cd5bcb687cbbfbb303 /testsuite/tests/ghci/scripts/T11524a.stdout
parent6ca9b15f77e58931953edb7c872b803cb261fce9 (diff)
downloadhaskell-3801262e89957a0fceeec0c5683045cf327aac64.tar.gz
Fix printing of an `IfacePatSyn`
Now the existentially quantified type variables are printed at the correct location when printing a pattern synonym type from an `IfacePatSyn`. The function `pprIfaceContextMaybe` has been removed as it is no longer needed. Fixes #11524. Reviewers: austin, goldfire, thomie, bgamari, mpickering Reviewed By: bgamari Differential Revision: https://phabricator.haskell.org/D1958 GHC Trac Issues: #11524
Diffstat (limited to 'testsuite/tests/ghci/scripts/T11524a.stdout')
-rw-r--r--testsuite/tests/ghci/scripts/T11524a.stdout49
1 files changed, 49 insertions, 0 deletions
diff --git a/testsuite/tests/ghci/scripts/T11524a.stdout b/testsuite/tests/ghci/scripts/T11524a.stdout
new file mode 100644
index 0000000000..dca7dbd3b6
--- /dev/null
+++ b/testsuite/tests/ghci/scripts/T11524a.stdout
@@ -0,0 +1,49 @@
+without -fprint-explicit-foralls
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+pattern P :: Bool -- Defined at <interactive>:16:1
+pattern Pe :: a -> Ex -- Defined at <interactive>:17:1
+pattern Pu :: t -> t -- Defined at <interactive>:18:1
+pattern Pue :: t -> a -> (t, Ex) -- Defined at <interactive>:19:1
+pattern Pur :: (Num a, Eq a) => a -> [a]
+ -- Defined at <interactive>:20:1
+pattern Purp :: (Num a, Eq a) => Show t => a
+ -> t -> ([a], UnivProv t)
+ -- Defined at <interactive>:21:1
+pattern Pure :: (Num a, Eq a) => a -> a1 -> ([a], Ex)
+ -- Defined at <interactive>:22:1
+pattern Purep :: (Num a, Eq a) => Show a1 => a
+ -> a1 -> ([a], ExProv)
+ -- Defined at <interactive>:23:1
+pattern Pep :: () => Show a => a -> ExProv
+ -- Defined at <interactive>:24:1
+pattern Pup :: () => Show t => t -> UnivProv t
+ -- Defined at <interactive>:25:1
+pattern Puep :: () => Show a => a -> t -> (ExProv, t)
+ -- Defined at <interactive>:26:1
+
+with -fprint-explicit-foralls
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+pattern P :: Bool -- Defined at <interactive>:16:1
+pattern Pe :: () => forall a. a -> Ex
+ -- Defined at <interactive>:17:1
+pattern Pu :: forall t. t -> t -- Defined at <interactive>:18:1
+pattern Pue :: forall t. () => forall a. t -> a -> (t, Ex)
+ -- Defined at <interactive>:19:1
+pattern Pur :: forall a. (Num a, Eq a) => a -> [a]
+ -- Defined at <interactive>:20:1
+pattern Purp :: forall a t. (Num a, Eq a) => Show t => a
+ -> t -> ([a], UnivProv t)
+ -- Defined at <interactive>:21:1
+pattern Pure :: forall a. (Num a, Eq a) => forall a1. a
+ -> a1 -> ([a], Ex)
+ -- Defined at <interactive>:22:1
+pattern Purep :: forall a. (Num a, Eq a) => forall a1. Show a1 => a
+ -> a1 -> ([a], ExProv)
+ -- Defined at <interactive>:23:1
+pattern Pep :: () => forall a. Show a => a -> ExProv
+ -- Defined at <interactive>:24:1
+pattern Pup :: forall t. () => Show t => t -> UnivProv t
+ -- Defined at <interactive>:25:1
+pattern Puep :: forall t. () => forall a. Show a => a
+ -> t -> (ExProv, t)
+ -- Defined at <interactive>:26:1