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
|