summaryrefslogtreecommitdiff
path: root/testsuite/tests/roles/should_compile/Roles3.stderr
blob: 544e497c2dba5354fa3ca768c58afe97ec28df0d (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
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
      Kind: * -> *
    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
    Kind: * -> *
  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.9.0.0, ghc-prim-0.5.0.0,
                     integer-gmp-1.0.0.1]

==================== Typechecker ====================
Roles3.$tcC4
  = GHC.Types.TyCon
      12861862461396457184##
      6389612623460961504##
      Roles3.$trModule
      (GHC.Types.TrNameS "C4"#)
Roles3.$tc'C:C4
  = GHC.Types.TyCon
      5012080351591218464##
      14312195554521420369##
      Roles3.$trModule
      (GHC.Types.TrNameS "'C:C4"#)
Roles3.$tcC3
  = GHC.Types.TyCon
      5998139369941479154##
      6816352641934636458##
      Roles3.$trModule
      (GHC.Types.TrNameS "C3"#)
Roles3.$tc'C:C3
  = GHC.Types.TyCon
      5363370173992879615##
      3444510123613553605##
      Roles3.$trModule
      (GHC.Types.TrNameS "'C:C3"#)
Roles3.$tcC2
  = GHC.Types.TyCon
      8833962732139387711##
      7891126688522429937##
      Roles3.$trModule
      (GHC.Types.TrNameS "C2"#)
Roles3.$tc'C:C2
  = GHC.Types.TyCon
      17372867324718144313##
      13604113872247370917##
      Roles3.$trModule
      (GHC.Types.TrNameS "'C:C2"#)
Roles3.$tcC1
  = GHC.Types.TyCon
      16242970448469140073##
      10229725431456576413##
      Roles3.$trModule
      (GHC.Types.TrNameS "C1"#)
Roles3.$tc'C:C1
  = GHC.Types.TyCon
      2927144765823607117##
      15172069236577673237##
      Roles3.$trModule
      (GHC.Types.TrNameS "'C:C1"#)
Roles3.$trModule
  = GHC.Types.Module
      (GHC.Types.TrNameS "main"#) (GHC.Types.TrNameS "Roles3"#)