summaryrefslogtreecommitdiff
path: root/testsuite/tests/gadt/SynDataRec.hs
blob: 021ed0ba1783d6d08a06ec252b7bf0c06ae9ed41 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{-# LANGUAGE KindSignatures, DataKinds, GADTs #-}

module SynDataRec where

-- This mutual recursion betwen a data type and
-- a type synonym is a little delicate.  See
-- Note [GADT return types] in GHC.Tc.TyCl

data Pass = Parsed | Renamed

data GhcPass (c :: Pass) where
  GhcPs :: GhcPs
  GhcRn :: GhcRn

type GhcPs   = GhcPass 'Parsed
type GhcRn   = GhcPass 'Renamed