blob: ff3b234509104e031e748eff839ba1e59a18813c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
|
TYPE SIGNATURES
Roles1.K1 :: forall a. a -> T1 a
Roles1.K2 :: forall a. a -> T2 a
Roles1.K3 :: forall k (a :: k). T3 a
Roles1.K4 :: forall (a :: * -> *) b. a b -> T4 a b
Roles1.K5 :: forall a. a -> T5 a
Roles1.K6 :: forall {k} (a :: k). T6 a
Roles1.K7 :: forall {k} (a :: k) b. b -> T7 a b
TYPE CONSTRUCTORS
type role T1 nominal
data T1 a = K1 a
data T2 a = K2 a
type role T3 phantom
data T3 (a :: k) = K3
type role T4 nominal nominal
data T4 (a :: * -> *) b = K4 (a b)
data T5 a = K5 a
type role T6 phantom
data T6 (a :: k) = K6
type role T7 phantom representational
data T7 (a :: k) b = K7 b
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base-4.12.0.0, ghc-prim-0.5.2.0,
integer-gmp-1.0.2.0]
==================== Typechecker ====================
Roles1.$tcT7
= GHC.Types.TyCon
178606230775360129##
14564382578551945561##
Roles1.$trModule
(GHC.Types.TrNameS "T7"#)
1
$krep
Roles1.$tc'K7
= GHC.Types.TyCon
15901479081375327280##
4842873210599704617##
Roles1.$trModule
(GHC.Types.TrNameS "'K7"#)
3
$krep
Roles1.$tcT6
= GHC.Types.TyCon
7244893995195634045##
6882827069359931041##
Roles1.$trModule
(GHC.Types.TrNameS "T6"#)
1
$krep
Roles1.$tc'K6
= GHC.Types.TyCon
13928703131159360198##
9274401506945696896##
Roles1.$trModule
(GHC.Types.TrNameS "'K6"#)
2
$krep
Roles1.$tcT5
= GHC.Types.TyCon
12033401645911719002##
6369139038321702301##
Roles1.$trModule
(GHC.Types.TrNameS "T5"#)
0
GHC.Types.krep$*Arr*
Roles1.$tc'K5
= GHC.Types.TyCon
5548842497263642061##
18349261927117571882##
Roles1.$trModule
(GHC.Types.TrNameS "'K5"#)
1
$krep
Roles1.$tcT4
= GHC.Types.TyCon
15834077582937152787##
17059037094835388922##
Roles1.$trModule
(GHC.Types.TrNameS "T4"#)
0
$krep
Roles1.$tc'K4
= GHC.Types.TyCon
10188453925450404995##
4762093850599364042##
Roles1.$trModule
(GHC.Types.TrNameS "'K4"#)
2
$krep
Roles1.$tcT3
= GHC.Types.TyCon
13341737262627465733##
14527452670364737316##
Roles1.$trModule
(GHC.Types.TrNameS "T3"#)
1
$krep
Roles1.$tc'K3
= GHC.Types.TyCon
14534968069054730342##
6860808298964464185##
Roles1.$trModule
(GHC.Types.TrNameS "'K3"#)
2
$krep
Roles1.$tcT2
= GHC.Types.TyCon
12900773996789723956##
9313087549503346504##
Roles1.$trModule
(GHC.Types.TrNameS "T2"#)
0
GHC.Types.krep$*Arr*
Roles1.$tc'K2
= GHC.Types.TyCon
11054915488163123841##
10799789256744079155##
Roles1.$trModule
(GHC.Types.TrNameS "'K2"#)
1
$krep
Roles1.$tcT1
= GHC.Types.TyCon
13228660854624297872##
14494320157476678712##
Roles1.$trModule
(GHC.Types.TrNameS "T1"#)
0
GHC.Types.krep$*Arr*
Roles1.$tc'K1
= GHC.Types.TyCon
1265606750138351672##
7033043930969109074##
Roles1.$trModule
(GHC.Types.TrNameS "'K1"#)
1
$krep
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepVar 1
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepVar 0
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepVar 0
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepVar 1
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepVar 2
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepApp $krep $krep
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepFun $krep GHC.Types.krep$*Arr*
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepFun $krep GHC.Types.krep$*
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepFun $krep $krep
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepFun $krep $krep
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepFun $krep $krep
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepFun $krep $krep
$krep [InlPrag=NOUSERINLINE[~]] = GHC.Types.KindRepFun $krep $krep
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepFun GHC.Types.krep$*Arr* GHC.Types.krep$*Arr*
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepTyConApp
Roles1.$tcT7 ((:) $krep ((:) $krep ((:) $krep [])))
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepTyConApp Roles1.$tcT6 ((:) $krep ((:) $krep []))
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepTyConApp Roles1.$tcT4 ((:) $krep ((:) $krep []))
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepTyConApp Roles1.$tcT3 ((:) $krep ((:) $krep []))
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepTyConApp Roles1.$tcT5 ((:) $krep [])
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepTyConApp Roles1.$tcT2 ((:) $krep [])
$krep [InlPrag=NOUSERINLINE[~]]
= GHC.Types.KindRepTyConApp Roles1.$tcT1 ((:) $krep [])
Roles1.$trModule
= GHC.Types.Module
(GHC.Types.TrNameS "main"#) (GHC.Types.TrNameS "Roles1"#)
|