summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÖmer Sinan Ağacan <omeragacan@gmail.com>2016-05-20 04:39:57 -0400
committerÖmer Sinan Ağacan <omeragacan@gmail.com>2016-05-20 04:40:13 -0400
commit08e47ca9849ab986d0367746a003754fcf0d4176 (patch)
tree2ff684e74629e81bb91a99442d707b8dd655a3f6
parent39103062e50249da857761d0eaca325aa428e446 (diff)
downloadhaskell-08e47ca9849ab986d0367746a003754fcf0d4176.tar.gz
FunDep printer: Fix unicode arrow
The arrow should be printed in unicode arrow syntax when -fprint-unicode-syntax is used. Reviewers: austin, bgamari, thomie Reviewed By: thomie Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2243 GHC Trac Issues: #11825
-rw-r--r--compiler/types/Class.hs2
-rw-r--r--testsuite/tests/ghci/should_run/T11825.hs4
-rw-r--r--testsuite/tests/ghci/should_run/T11825.script3
-rw-r--r--testsuite/tests/ghci/should_run/T11825.stdout4
-rw-r--r--testsuite/tests/ghci/should_run/all.T1
5 files changed, 13 insertions, 1 deletions
diff --git a/compiler/types/Class.hs b/compiler/types/Class.hs
index 09c8da9091..d62f90f09d 100644
--- a/compiler/types/Class.hs
+++ b/compiler/types/Class.hs
@@ -308,7 +308,7 @@ pprFundeps [] = empty
pprFundeps fds = hsep (vbar : punctuate comma (map pprFunDep fds))
pprFunDep :: Outputable a => FunDep a -> SDoc
-pprFunDep (us, vs) = hsep [interppSP us, text "->", interppSP vs]
+pprFunDep (us, vs) = hsep [interppSP us, arrow, interppSP vs]
instance Data.Data Class where
-- don't traverse?
diff --git a/testsuite/tests/ghci/should_run/T11825.hs b/testsuite/tests/ghci/should_run/T11825.hs
new file mode 100644
index 0000000000..c3dd32ea41
--- /dev/null
+++ b/testsuite/tests/ghci/should_run/T11825.hs
@@ -0,0 +1,4 @@
+{-# LANGUAGE FunctionalDependencies #-}
+
+class X a b | a -> b where
+ to :: a -> b
diff --git a/testsuite/tests/ghci/should_run/T11825.script b/testsuite/tests/ghci/should_run/T11825.script
new file mode 100644
index 0000000000..7c9d10ab62
--- /dev/null
+++ b/testsuite/tests/ghci/should_run/T11825.script
@@ -0,0 +1,3 @@
+:set -fprint-unicode-syntax
+:load T11825.hs
+:info X
diff --git a/testsuite/tests/ghci/should_run/T11825.stdout b/testsuite/tests/ghci/should_run/T11825.stdout
new file mode 100644
index 0000000000..9ab7b1be0c
--- /dev/null
+++ b/testsuite/tests/ghci/should_run/T11825.stdout
@@ -0,0 +1,4 @@
+class X a b | a → b where
+ to ∷ a → b
+ {-# MINIMAL to #-}
+ -- Defined at T11825.hs:3:1
diff --git a/testsuite/tests/ghci/should_run/all.T b/testsuite/tests/ghci/should_run/all.T
index 930f14b7a1..08fe33d166 100644
--- a/testsuite/tests/ghci/should_run/all.T
+++ b/testsuite/tests/ghci/should_run/all.T
@@ -23,3 +23,4 @@ test('T9915', just_ghci, ghci_script, ['T9915.script'])
test('T10145', just_ghci, ghci_script, ['T10145.script'])
test('T7253', just_ghci, ghci_script, ['T7253.script'])
test('T11328', just_ghci, ghci_script, ['T11328.script'])
+test('T11825', just_ghci, ghci_script, ['T11825.script'])