Skip to content

Instantly share code, notes, and snippets.

@wz1000
Created July 5, 2018 18:10
Show Gist options
  • Save wz1000/02cd2c73713938e17554aa9e9c0cdc6b to your computer and use it in GitHub Desktop.
Save wz1000/02cd2c73713938e17554aa9e9c0cdc6b to your computer and use it in GitHub Desktop.
module A where
data D = D
{ foo :: Int
, bar :: Bool
}
[1 of 1] Compiling A ( a.hs, nothing )
a.hs:1:1:
==================== Typechecker ====================
{Bag(Located (HsBind Var)):
[({ <no location info> }
(VarBind
{Var: (main:A.$tcD{v rVW} [lidx] :: ghc-prim:GHC.Types.TyCon{tc 61W})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsLit
{HsWord{64}Prim (6749585454287500068) (NoSourceText)}))))
({ <no location info> }
(HsLit
{HsWord{64}Prim (7541445348245937981) (NoSourceText)}))))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: (main:A.$trModule{v rVY} [lidx] :: ghc-prim:GHC.Types.Module{tc 622})})))))
({ <no location info> }
(HsPar
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsLit
(HsStringPrim
(NoSourceText)
"D")))))))))
({ <no location info> }
(HsLit
{HsInt{64}Prim (0) (SourceText
"0")}))))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: (ghc-prim:GHC.Types.krep$*{v 08o} [gid] :: ghc-prim:GHC.Types.KindRep{tc 62k})})))))
(False)))
,({ <no location info> }
(VarBind
{Var: (main:A.$tc'D{v rVx} [lidx] :: ghc-prim:GHC.Types.TyCon{tc 61W})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsLit
{HsWord{64}Prim (6816249442255548848) (NoSourceText)}))))
({ <no location info> }
(HsLit
{HsWord{64}Prim (6500796575847304687) (NoSourceText)}))))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: (main:A.$trModule{v rVY} [lidx] :: ghc-prim:GHC.Types.Module{tc 622})})))))
({ <no location info> }
(HsPar
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsLit
(HsStringPrim
(NoSourceText)
"'D")))))))))
({ <no location info> }
(HsLit
{HsInt{64}Prim (0) (SourceText
"0")}))))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: ($krep_aWY{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})})))))
(False)))
,({ <no location info> }
(VarBind
{Var: ($krep_aX0{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: ($krep_aX1{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})})))))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: ($krep_aX2{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})})))))
(False)))
,({ <no location info> }
(VarBind
{Var: ($krep_aWY{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: ($krep_aWZ{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})})))))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: ($krep_aX0{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})})))))
(False)))
,({ <no location info> }
(VarBind
{Var: ($krep_aWZ{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: (ghc-prim:GHC.Types.$tcInt{v 3v} [gid] :: ghc-prim:GHC.Types.TyCon{tc 61W})})))))
({ <no location info> }
(HsWrap
(WpTyApp
(TyConApp
({abstract:TyCon})
[]))
(HsConLikeOut
({abstract:ConLike}))))))
(False)))
,({ <no location info> }
(VarBind
{Var: ($krep_aX1{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: (ghc-prim:GHC.Types.$tcBool{v 39} [gid] :: ghc-prim:GHC.Types.TyCon{tc 61W})})))))
({ <no location info> }
(HsWrap
(WpTyApp
(TyConApp
({abstract:TyCon})
[]))
(HsConLikeOut
({abstract:ConLike}))))))
(False)))
,({ <no location info> }
(VarBind
{Var: ($krep_aX2{v} [lid] :: ghc-prim:GHC.Types.KindRep{tc 62k})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsVar
({ <no location info> }
{Var: (main:A.$tcD{v rVW} [lidx] :: ghc-prim:GHC.Types.TyCon{tc 61W})})))))
({ <no location info> }
(HsWrap
(WpTyApp
(TyConApp
({abstract:TyCon})
[]))
(HsConLikeOut
({abstract:ConLike}))))))
(False)))
,({ <no location info> }
(VarBind
{Var: (main:A.$trModule{v rVY} [lidx] :: ghc-prim:GHC.Types.Module{tc 622})}
({ <no location info> }
(HsApp
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsPar
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsLit
(HsStringPrim
(NoSourceText)
"main")))))))))
({ <no location info> }
(HsPar
({ <no location info> }
(HsApp
({ <no location info> }
(HsConLikeOut
({abstract:ConLike})))
({ <no location info> }
(HsLit
(HsStringPrim
(NoSourceText)
"A")))))))))
(False)))
,({ a.hs:4:5-7 }
(AbsBinds
[]
[]
[(ABE
{Var: (main:A.foo{v rrX} [lidx[[RecSel]]] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Int{(w) tc 3u})}
{Var: (foo{v aW1} [lid] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Int{(w) tc 3u})}
(WpHole)
(SpecPrags
[]))]
[({abstract:TcEvBinds})]
{Bag(Located (HsBind Var)):
[({ a.hs:4:5-7 }
(FunBind
({ a.hs:4:5-7 }
{Var: (foo{v aW1} [lid] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Int{(w) tc 3u})})
(MG
({ a.hs:4:5-7 }
[({ a.hs:4:5-7 }
(Match
(FunRhs
({ a.hs:4:5-7 }
{Name: foo{v aW1}})
(Prefix)
(NoSrcStrict))
[({ a.hs:4:5-7 }
(ConPatOut
({ a.hs:4:5-7 }
({abstract:ConLike}))
[]
[]
[]
({abstract:TcEvBinds})
(RecCon
(HsRecFields
[({ <no location info> }
(HsRecField
({ a.hs:4:5-7 }
(FieldOcc
({ a.hs:4:5-7 }
(Unqual
{OccName: foo}))
{Var: (main:A.foo{v rrX} [lidx[[RecSel]]] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Int{(w) tc 3u})}))
({ a.hs:4:5-7 }
(VarPat
({ a.hs:4:5-7 }
{Var: (foo{v B1} [lid] :: ghc-prim:GHC.Types.Int{(w) tc 3u})})))
(False)))]
(Nothing)))
(WpHole)))]
(GRHSs
[({ a.hs:4:5-7 }
(GRHS
[]
({ a.hs:4:5-7 }
(HsVar
({ <no location info> }
{Var: (foo{v B1} [lid] :: ghc-prim:GHC.Types.Int{(w) tc 3u})})))))]
({ <no location info> }
(EmptyLocalBinds)))))])
[(TyConApp
({abstract:TyCon})
[])]
(TyConApp
({abstract:TyCon})
[])
(Generated))
(WpHole)
{NameSet:
[]}
[]))]}
(True)))
,({ a.hs:5:5-7 }
(AbsBinds
[]
[]
[(ABE
{Var: (main:A.bar{v rrY} [lidx[[RecSel]]] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Bool{(w) tc 38})}
{Var: (bar{v aW2} [lid] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Bool{(w) tc 38})}
(WpHole)
(SpecPrags
[]))]
[({abstract:TcEvBinds})]
{Bag(Located (HsBind Var)):
[({ a.hs:5:5-7 }
(FunBind
({ a.hs:5:5-7 }
{Var: (bar{v aW2} [lid] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Bool{(w) tc 38})})
(MG
({ a.hs:5:5-7 }
[({ a.hs:5:5-7 }
(Match
(FunRhs
({ a.hs:5:5-7 }
{Name: bar{v aW2}})
(Prefix)
(NoSrcStrict))
[({ a.hs:5:5-7 }
(ConPatOut
({ a.hs:5:5-7 }
({abstract:ConLike}))
[]
[]
[]
({abstract:TcEvBinds})
(RecCon
(HsRecFields
[({ <no location info> }
(HsRecField
({ a.hs:5:5-7 }
(FieldOcc
({ a.hs:5:5-7 }
(Unqual
{OccName: bar}))
{Var: (main:A.bar{v rrY} [lidx[[RecSel]]] :: main:A.D{tc rpV}
-> ghc-prim:GHC.Types.Bool{(w) tc 38})}))
({ a.hs:5:5-7 }
(VarPat
({ a.hs:5:5-7 }
{Var: (bar{v B1} [lid] :: ghc-prim:GHC.Types.Bool{(w) tc 38})})))
(False)))]
(Nothing)))
(WpHole)))]
(GRHSs
[({ a.hs:5:5-7 }
(GRHS
[]
({ a.hs:5:5-7 }
(HsVar
({ <no location info> }
{Var: (bar{v B1} [lid] :: ghc-prim:GHC.Types.Bool{(w) tc 38})})))))]
({ <no location info> }
(EmptyLocalBinds)))))])
[(TyConApp
({abstract:TyCon})
[])]
(TyConApp
({abstract:TyCon})
[])
(Generated))
(WpHole)
{NameSet:
[]}
[]))]}
(True)))]}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment