summaryrefslogtreecommitdiff
path: root/testsuite/tests/roles/should_compile/Roles3.stderr
blob: 5d3c38c355d14fd85f96c033997e644afac6665c (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
TYPE SIGNATURES
  meth1 :: forall a. C1 a => a -> a
  meth2 :: forall a b. (C2 a b, a ~ b) => a -> b
  meth3 :: forall a b. C3 a b => a -> F3 b -> F3 b
  meth4 :: forall a b. C4 a b => a -> F4 b -> F4 b
TYPE CONSTRUCTORS
  class C1 a where
    meth1 :: a -> a
    {-# MINIMAL meth1 #-}
  class C2 a b where
    meth2 :: a ~ b => a -> b
    {-# MINIMAL meth2 #-}
  class C3 a b where
    type family F3 b :: * open
    meth3 :: a -> F3 b -> F3 b
    {-# MINIMAL meth3 #-}
  class C4 a b where
    meth4 :: a -> F4 b -> F4 b
    {-# MINIMAL meth4 #-}
  type family F4 a :: * open
  type Syn1 a = F4 a
  type Syn2 a = [a]
COERCION AXIOMS
  axiom Roles3.N:C1 :: C1 a = a -> a -- Defined at Roles3.hs:6:1
  axiom Roles3.N:C2 ::
    C2 a b = a ~ b => a -> b -- Defined at Roles3.hs:9:1
  axiom Roles3.N:C3 ::
    C3 a b = a -> F3 b -> F3 b -- Defined at Roles3.hs:12:1
  axiom Roles3.N:C4 ::
    C4 a b = a -> F4 b -> F4 b -- Defined at Roles3.hs:18:1
Dependent modules: []
Dependent packages: [base-4.10.0.0, ghc-prim-0.5.0.0,
                     integer-gmp-1.0.0.1]

==================== Typechecker ====================
Roles3.$tcC4
  = GHC.Types.TyCon
      6800596812149592130##
      15513203864133461281##
      Roles3.$trModule
      (GHC.Types.TrNameS "C4"#)
      0
      krep
krep [InlPrag=[~]]
  = GHC.Types.KindRepFun
      (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
      (GHC.Types.KindRepFun
         (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
         (GHC.Types.KindRepTyConApp GHC.Types.$tcConstraint []))
Roles3.$tcC3
  = GHC.Types.TyCon
      5076086601454991970##
      10299714674904836194##
      Roles3.$trModule
      (GHC.Types.TrNameS "C3"#)
      0
      krep
krep [InlPrag=[~]]
  = GHC.Types.KindRepFun
      (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
      (GHC.Types.KindRepFun
         (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
         (GHC.Types.KindRepTyConApp GHC.Types.$tcConstraint []))
Roles3.$tcC2
  = GHC.Types.TyCon
      7902873224172523979##
      11840994447152209031##
      Roles3.$trModule
      (GHC.Types.TrNameS "C2"#)
      0
      krep
krep [InlPrag=[~]]
  = GHC.Types.KindRepFun
      (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
      (GHC.Types.KindRepFun
         (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
         (GHC.Types.KindRepTyConApp GHC.Types.$tcConstraint []))
Roles3.$tc'C:C2
  = GHC.Types.TyCon
      11218882737915989529##
      9454910899374397367##
      Roles3.$trModule
      (GHC.Types.TrNameS "'C:C2"#)
      2
      krep
krep [InlPrag=[~]]
  = GHC.Types.KindRepFun
      (GHC.Types.KindRepFun
         (GHC.Types.KindRepTyConApp
            Data.Type.Equality.$tc~
            ((:)
               (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
               ((:) (GHC.Types.KindRepVar 0) ((:) (GHC.Types.KindRepVar 1) []))))
         (GHC.Types.KindRepFun
            (GHC.Types.KindRepVar 0) (GHC.Types.KindRepVar 1)))
      (GHC.Types.KindRepTyConApp
         Roles3.$tcC2
         ((:) (GHC.Types.KindRepVar 0) ((:) (GHC.Types.KindRepVar 1) [])))
Roles3.$tcC1
  = GHC.Types.TyCon
      11013585501375994163##
      16371608655219610659##
      Roles3.$trModule
      (GHC.Types.TrNameS "C1"#)
      0
      krep
krep [InlPrag=[~]]
  = GHC.Types.KindRepFun
      (GHC.Types.KindRepTYPE GHC.Types.LiftedRep)
      (GHC.Types.KindRepTyConApp GHC.Types.$tcConstraint [])
Roles3.$tc'C:C1
  = GHC.Types.TyCon
      4508088879886988796##
      13962145553903222779##
      Roles3.$trModule
      (GHC.Types.TrNameS "'C:C1"#)
      1
      krep
krep [InlPrag=[~]]
  = GHC.Types.KindRepFun
      (GHC.Types.KindRepFun
         (GHC.Types.KindRepVar 0) (GHC.Types.KindRepVar 0))
      (GHC.Types.KindRepTyConApp
         Roles3.$tcC1 ((:) (GHC.Types.KindRepVar 0) []))
Roles3.$trModule
  = GHC.Types.Module
      (GHC.Types.TrNameS "main"#) (GHC.Types.TrNameS "Roles3"#)