T8958.stderr 2.02 KB
Newer Older
1

2
T8958.hs:1:31: warning:
3 4 5 6 7
    -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
TYPE SIGNATURES
TYPE CONSTRUCTORS
  type role Map nominal representational
  newtype (Nominal k, Representational v) => Map k v = MkMap [(k, v)]
8
    Kind: * -> * -> *
9 10 11 12
  class Nominal a
  type role Representational representational
  class Representational a
COERCION AXIOMS
13 14
  axiom T8958.NTCo:Map ::
    Map k v = [(k, v)] -- Defined at T8958.hs:13:1
15 16 17 18 19
INSTANCES
  instance [incoherent] Nominal a -- Defined at T8958.hs:7:10
  instance [incoherent] Representational a
    -- Defined at T8958.hs:10:10
Dependent modules: []
20
Dependent packages: [base-4.9.0.0, ghc-prim-0.5.0.0,
21 22 23
                     integer-gmp-1.0.0.0]

==================== Typechecker ====================
24 25 26 27 28 29
T8958.$tcMap
  = GHC.Types.TyCon
      0## 0## T8958.$trModule (GHC.Types.TrNameS "Map"#)
T8958.$tc'MkMap
  = GHC.Types.TyCon
      0## 0## T8958.$trModule (GHC.Types.TrNameS "'MkMap"#)
30
T8958.$tcRepresentational
31 32
  = GHC.Types.TyCon
      0## 0## T8958.$trModule (GHC.Types.TrNameS "Representational"#)
33
T8958.$tc'D:Representational
34 35
  = GHC.Types.TyCon
      0## 0## T8958.$trModule (GHC.Types.TrNameS "'D:Representational"#)
36
T8958.$tcNominal
37 38
  = GHC.Types.TyCon
      0## 0## T8958.$trModule (GHC.Types.TrNameS "Nominal"#)
39
T8958.$tc'D:Nominal
40 41 42 43 44
  = GHC.Types.TyCon
      0## 0## T8958.$trModule (GHC.Types.TrNameS "'D:Nominal"#)
T8958.$trModule
  = GHC.Types.Module
      (GHC.Types.TrNameS "main"#) (GHC.Types.TrNameS "T8958"#)
45 46 47 48 49 50 51 52 53 54 55 56 57 58
AbsBinds [a] []
  {Exports: [T8958.$fRepresentationala <= $dRepresentational
               <>]
   Exported types: T8958.$fRepresentationala
                     :: forall a. Representational a
                   [LclIdX[DFunId], Str=DmdType]
   Binds: $dRepresentational = T8958.D:Representational}
AbsBinds [a] []
  {Exports: [T8958.$fNominala <= $dNominal
               <>]
   Exported types: T8958.$fNominala :: forall a. Nominal a
                   [LclIdX[DFunId], Str=DmdType]
   Binds: $dNominal = T8958.D:Nominal}