summaryrefslogtreecommitdiff
path: root/testsuite/tests/th/T14888.hs
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/th/T14888.hs')
-rw-r--r--testsuite/tests/th/T14888.hs18
1 files changed, 18 insertions, 0 deletions
diff --git a/testsuite/tests/th/T14888.hs b/testsuite/tests/th/T14888.hs
new file mode 100644
index 0000000000..e2bcec64ea
--- /dev/null
+++ b/testsuite/tests/th/T14888.hs
@@ -0,0 +1,18 @@
+{-# LANGUAGE TemplateHaskell #-}
+module T14888 where
+
+import Language.Haskell.TH
+
+foo :: $([t| (->) Bool Bool |])
+foo x = x
+
+class Functor' f where
+ fmap' :: (a -> b) -> f a -> f b
+
+instance Functor' ((->) r) where
+ fmap' = (.)
+
+$(return [])
+
+functor'Instances :: String
+functor'Instances = $(reify ''Functor' >>= stringE . pprint)