5939c69954baf9c714729a30795dbe9c9d42ba4a
[ghc.git] / testsuite / tests / roles / should_compile / T8958.stderr
1
2 T8958.hs:1:31: warning:
3     -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
4 TYPE SIGNATURES
5   T8958.MkMap :: forall k v. [(k, v)] -> Map k v
6 TYPE CONSTRUCTORS
7   type role Map nominal representational
8   newtype (Nominal k, Representational v) => Map k v = MkMap [(k, v)]
9   class Nominal a
10   type role Representational representational
11   class Representational a
12 COERCION AXIOMS
13   axiom T8958.N:Map :: Map k v = [(k, v)] -- Defined at T8958.hs:13:1
14 INSTANCES
15   instance [incoherent] Representational a
16     -- Defined at T8958.hs:10:10
17   instance [incoherent] Nominal a -- Defined at T8958.hs:7:10
18 Dependent modules: []
19 Dependent packages: [base-4.10.0.0, ghc-prim-0.5.0.0,
20                      integer-gmp-1.0.0.1]
21
22 ==================== Typechecker ====================
23 T8958.$tcMap
24   = GHC.Types.TyCon
25       16542473435673943392##
26       5374201132143305512##
27       T8958.$trModule
28       (GHC.Types.TrNameS "Map"#)
29       0
30       $krep
31 $krep [InlPrag=[~]]
32   = GHC.Types.KindRepFun
33       (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
34       (GHC.Types.KindRepFun
35          (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
36          (GHC.Types.KindRepTYPE GHC.Types.LiftedRep))
37 T8958.$tc'MkMap
38   = GHC.Types.TyCon
39       2942839876828444488##
40       3989137838066763457##
41       T8958.$trModule
42       (GHC.Types.TrNameS "'MkMap"#)
43       2
44       $krep
45 $krep [InlPrag=[~]]
46   = GHC.Types.KindRepFun
47       (GHC.Types.KindRepTyConApp
48          GHC.Types.$tc[]
49          ((:) @ GHC.Types.KindRep
50             (GHC.Types.KindRepTyConApp
51                GHC.Tuple.$tc(,)
52                ((:) @ GHC.Types.KindRep
53                   (GHC.Types.KindRepVar 0)
54                   ((:) @ GHC.Types.KindRep
55                      (GHC.Types.KindRepVar 1) [] @ GHC.Types.KindRep)))
56             [] @ GHC.Types.KindRep))
57       (GHC.Types.KindRepTyConApp
58          T8958.$tcMap
59          ((:) @ GHC.Types.KindRep
60             (GHC.Types.KindRepVar 0)
61             ((:) @ GHC.Types.KindRep
62                (GHC.Types.KindRepVar 1) [] @ GHC.Types.KindRep)))
63 T8958.$tcRepresentational
64   = GHC.Types.TyCon
65       12809567151893673426##
66       12159693688248149156##
67       T8958.$trModule
68       (GHC.Types.TrNameS "Representational"#)
69       0
70       $krep
71 $krep [InlPrag=[~]]
72   = GHC.Types.KindRepFun
73       (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
74       (GHC.Types.KindRepTyConApp
75          GHC.Types.$tcConstraint [] @ GHC.Types.KindRep)
76 T8958.$tc'C:Representational
77   = GHC.Types.TyCon
78       2358772282532242424##
79       5444038897914446879##
80       T8958.$trModule
81       (GHC.Types.TrNameS "'C:Representational"#)
82       1
83       $krep
84 $krep [InlPrag=[~]]
85   = GHC.Types.KindRepTyConApp
86       T8958.$tcRepresentational
87       ((:) @ GHC.Types.KindRep
88          (GHC.Types.KindRepVar 0) [] @ GHC.Types.KindRep)
89 T8958.$tcNominal
90   = GHC.Types.TyCon
91       12224997609886144634##
92       9866011944332051160##
93       T8958.$trModule
94       (GHC.Types.TrNameS "Nominal"#)
95       0
96       $krep
97 $krep [InlPrag=[~]]
98   = GHC.Types.KindRepFun
99       (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
100       (GHC.Types.KindRepTyConApp
101          GHC.Types.$tcConstraint [] @ GHC.Types.KindRep)
102 T8958.$tc'C:Nominal
103   = GHC.Types.TyCon
104       10562260635335201742##
105       1215478186250709459##
106       T8958.$trModule
107       (GHC.Types.TrNameS "'C:Nominal"#)
108       1
109       $krep
110 $krep [InlPrag=[~]]
111   = GHC.Types.KindRepTyConApp
112       T8958.$tcNominal
113       ((:) @ GHC.Types.KindRep
114          (GHC.Types.KindRepVar 0) [] @ GHC.Types.KindRep)
115 T8958.$trModule
116   = GHC.Types.Module
117       (GHC.Types.TrNameS "main"#) (GHC.Types.TrNameS "T8958"#)
118 AbsBinds [a] []
119   {Exports: [T8958.$fRepresentationala <= $dRepresentational
120                wrap: <>]
121    Exported types: T8958.$fRepresentationala [InlPrag=CONLIKE]
122                      :: forall a. Representational a
123                    [LclIdX[DFunId],
124                     Unf=DFun: \ (@ a) -> T8958.C:Representational TYPE: a]
125    Binds: $dRepresentational = T8958.C:Representational @ a
126    Evidence: [EvBinds{}]}
127 AbsBinds [a] []
128   {Exports: [T8958.$fNominala <= $dNominal
129                wrap: <>]
130    Exported types: T8958.$fNominala [InlPrag=CONLIKE]
131                      :: forall a. Nominal a
132                    [LclIdX[DFunId], Unf=DFun: \ (@ a) -> T8958.C:Nominal TYPE: a]
133    Binds: $dNominal = T8958.C:Nominal @ a
134    Evidence: [EvBinds{}]}
135