summaryrefslogtreecommitdiff
path: root/testsuite/tests/roles/should_compile/Roles1.hs
blob: ca040c435303ad1d52bfca0974763db2c440eef9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{-# LANGUAGE RoleAnnotations, PolyKinds #-}

module Roles1 where

data T1 a = K1 a
data T2 a = K2 a
data T3 (a :: k) = K3
data T4 (a :: * -> *) b = K4 (a b)

data T5 a = K5 a
data T6 a = K6
data T7 a b = K7 b

type role T1 nominal
type role T2 representational
type role T3 phantom
type role T4 nominal _
type role T5 _