summaryrefslogtreecommitdiff
path: root/testsuite/tests/th/T18612.hs
blob: ea7c007c519c864e2e53826930a626613fc1bc9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE TemplateHaskell #-}
{-# OPTIONS_GHC -ddump-splices #-}
module T18612 where

import Data.Functor.Identity
import Data.Proxy
import Language.Haskell.TH

f :: $(arrowT `appT` (conT ''Identity `appT` (tupleT 1 `appT` (tupleT 0)))
              `appT` (conT ''Identity `appT` (tupleT 1 `appT` (tupleT 0))))
f $(conP 'Identity [tupP [tupP []]]) = $(conE 'Identity `appE` tupE [tupE []])

type G = $(conT ''Proxy `appT` (promotedTupleT 1 `appT` (tupleT 0)))