Skip to content

Instantly share code, notes, and snippets.

@bgamari
Created February 2, 2017 23:02
Show Gist options
  • Save bgamari/16db2a3b05443550b2a62c2cc5b6d2a5 to your computer and use it in GitHub Desktop.
Save bgamari/16db2a3b05443550b2a62c2cc5b6d2a5 to your computer and use it in GitHub Desktop.
Step 1[l:1,d:0] Wanted CallStack IP:
[WD] $dIP_ajMr {0}:: ?callStack::GHC.Stack.Types.CallStack
Step 2[l:1,d:0] Kept as inert:
[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack
Step 3[l:1,d:0] Top react: Dict/Top (solved wanted):
[WD] $dMonad_ajME {0}:: Monad IO
Step 4[l:1,d:0] Top react: Dict/Top (solved wanted):
[WD] $dApplicative_ajMU {0}:: Applicative IO
Step 5[l:1,d:0] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
Step 6[l:1,d:1] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
Step 7[l:1,d:2] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
Step 8[l:1,d:3] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
Step 9[l:1,d:4] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_aka5 {4}:: Typeable *
Step 10[l:1,d:5] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
Step 11[l:1,d:5] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
Step 12[l:1,d:4] Top react: Dict/Top (cached):
[WD] $dTypeable_aka6 {4}:: Typeable *
Step 13[l:1,d:3] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
Step 14[l:1,d:2] Top react: Dict/Top (cached):
[WD] $dTypeable_aka2 {2}:: Typeable Maybe
Step 15[l:1,d:1] Top react: Dict/Top (solved wanted):
[WD] $dTypeable_aka0 {1}:: Typeable Int
Step 16[l:1,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak8g {0}:: Monad IO
Step 17[l:2,d:0] Kept as inert:
[G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
Step 18[l:2,d:0] Kept as inert:
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
Kick out, tv = a_ajUc[ssk:2]
n-kicked = 2
kicked_out = WL {Non-eqs = [G] $d~_ajUe {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
Residual inerts = {Unsolved goals = 0}
Step 19[l:2,d:1] Kept as inert:
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2] -> *))
Step 20[l:2,d:1] Decomposed TyConApp:
[G] cobox_akae {1}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
Step 21[l:2,d:1] Solved by reflexivity:
[G] cobox_akag {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 22[l:2,d:1] Solved by reflexivity:
[G] cobox_akah {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 23[l:2,d:1] Kept as inert:
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Step 24[l:2,d:1] Solved by reflexivity:
[G] cobox_akaj {1}:: (* :: *) GHC.Prim.~# (* :: *)
Step 25[l:2,d:2] Kept as inert:
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2])
Step 26[l:2,d:3] Decomposed TyConApp:
[G] cobox_akao {3}:: (* :: *) GHC.Prim.~# (* :: *)
Step 27[l:2,d:3] Solved by reflexivity:
[G] cobox_akap {3}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 28[l:2,d:0] Kept as inert:
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *)
Step 29[l:2,d:0] Kept as inert:
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *)
Step 30[l:2,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ajUi {0}:: Monad IO
Step 31[l:2,d:0] Top react: Dict/Top (solved wanted):
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
Step 32[l:2,d:1] Top react: Dict/Top (solved wanted):
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
Step 33[l:2,d:1] Top react: Dict/Top (solved wanted):
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
Step 34[l:2,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak74 {0}:: Monad IO
Step 35[l:2,d:0] Top react: Dict/Top (cached):
[WD] $dApplicative_ak78 {0}:: Applicative IO
Step 36[l:2,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak8c {0}:: Monad IO
Step 37[l:3,d:0] Kept as inert:
[G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
Step 38[l:3,d:0] Kept as inert:
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
Kick out, tv = a_ak7d[ssk:3]
n-kicked = 2
kicked_out = WL {Non-eqs = [G] $d~_akaB {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
Residual inerts = {Equalities: [G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Step 39[l:3,d:4] Kept as inert:
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N ->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
Step 40[l:3,d:4] Decomposed TyConApp:
[G] cobox_akaJ {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *)
Step 41[l:3,d:4] Solved by reflexivity:
[G] cobox_akaL {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 42[l:3,d:4] Solved by reflexivity:
[G] cobox_akaM {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 43[l:3,d:4] Kept as inert:
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Step 44[l:3,d:4] Decomposed TyConApp:
[G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
Step 45[l:3,d:4] Solved by reflexivity:
[G] cobox_akaP {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 46[l:3,d:4] Solved by reflexivity:
[G] cobox_akaQ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 47[l:3,d:5] Decomposed TyConApp:
[G] cobox_akaT {5}:: (* :: *) GHC.Prim.~# (* :: *)
Step 48[l:3,d:5] Solved by reflexivity:
[G] cobox_akaU {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 49[l:3,d:4] Solved by reflexivity:
[G] cobox_akaS {4}:: (* :: *) GHC.Prim.~# (* :: *)
Step 50[l:3,d:3] Kept as inert:
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3])
Step 51[l:3,d:4] Decomposed TyConApp:
[G] cobox_akaZ {4}:: ((* -> *) :: *) GHC.Prim.~# ((* -> *) :: *)
Step 52[l:3,d:4] Solved by reflexivity:
[G] cobox_akb0 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 53[l:3,d:4] Solved by reflexivity:
[G] cobox_akb1 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 54[l:3,d:4] Solved by reflexivity:
[G] cobox_akb2 {4}:: (* :: *) GHC.Prim.~# (* :: *)
Step 55[l:3,d:4] Solved by reflexivity:
[G] cobox_akb3 {4}:: (* :: *) GHC.Prim.~# (* :: *)
Step 56[l:3,d:0] Kept as inert:
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *))
Step 57[l:3,d:0] Kept as inert:
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *))
Step 58[l:3,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak7h {0}:: Monad IO
Step 59[l:3,d:0] Top react: Dict/Top (solved wanted):
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
Step 60[l:3,d:1] Top react: Dict/Top (solved wanted):
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
Step 61[l:3,d:1] Top react: Dict/Top (solved wanted):
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
Step 62[l:3,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak7p {0}:: Monad IO
Step 63[l:3,d:0] Top react: Dict/Top (cached):
[WD] $dApplicative_ak7t {0}:: Applicative IO
Step 64[l:3,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak88 {0}:: Monad IO
Step 65[l:4,d:0] Kept as inert:
[G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *) -> * -> *))
Step 66[l:4,d:0] Kept as inert:
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *) -> * -> *))
Kick out, tv = a_ak7y[ssk:4]
n-kicked = 2
kicked_out = WL {Non-eqs = [G] $d~_akbb {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
Residual inerts = {Equalities: [G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (*
-> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Step 67[l:4,d:4] Kept as inert:
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
Step 68[l:4,d:4] Decomposed TyConApp:
[G] cobox_akbj {4}:: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *)
Step 69[l:4,d:4] Solved by reflexivity:
[G] cobox_akbl {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 70[l:4,d:4] Solved by reflexivity:
[G] cobox_akbm {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 71[l:4,d:4] Kept as inert:
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Step 72[l:4,d:4] Decomposed TyConApp:
[G] cobox_akbo {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *)
Step 73[l:4,d:4] Solved by reflexivity:
[G] cobox_akbp {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 74[l:4,d:4] Solved by reflexivity:
[G] cobox_akbq {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 75[l:4,d:5] Decomposed TyConApp:
[G] cobox_akbt {5}:: ((* -> *) :: *) GHC.Prim.~# ((* -> *) :: *)
Step 76[l:4,d:5] Solved by reflexivity:
[G] cobox_akbu {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 77[l:4,d:5] Solved by reflexivity:
[G] cobox_akbv {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 78[l:4,d:5] Solved by reflexivity:
[G] cobox_akbw {5}:: (* :: *) GHC.Prim.~# (* :: *)
Step 79[l:4,d:5] Solved by reflexivity:
[G] cobox_akbx {5}:: (* :: *) GHC.Prim.~# (* :: *)
Step 80[l:4,d:4] Decomposed TyConApp:
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
Step 81[l:4,d:4] Solved by reflexivity:
[G] cobox_akby {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 82[l:4,d:4] Solved by reflexivity:
[G] cobox_akbz {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 83[l:4,d:5] Decomposed TyConApp:
[G] cobox_akbC {5}:: (* :: *) GHC.Prim.~# (* :: *)
Step 84[l:4,d:5] Solved by reflexivity:
[G] cobox_akbD {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 85[l:4,d:4] Solved by reflexivity:
[G] cobox_akbB {4}:: (* :: *) GHC.Prim.~# (* :: *)
Step 86[l:4,d:3] Kept as inert:
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4])
Step 87[l:4,d:4] Decomposed TyConApp:
[G] cobox_akbI {4}:: ((* -> *) :: *) GHC.Prim.~# ((* -> *) :: *)
Step 88[l:4,d:4] Solved by reflexivity:
[G] cobox_akbJ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 89[l:4,d:4] Solved by reflexivity:
[G] cobox_akbK {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 90[l:4,d:4] Solved by reflexivity:
[G] cobox_akbL {4}:: (* :: *) GHC.Prim.~# (* :: *)
Step 91[l:4,d:4] Decomposed TyConApp:
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *)
Step 92[l:4,d:4] Solved by reflexivity:
[G] cobox_akbN {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
Step 93[l:4,d:0] Kept as inert:
[G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *))
Step 94[l:4,d:0] Kept as inert:
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *))
Step 95[l:4,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak7C {0}:: Monad IO
Step 96[l:4,d:0] Top react: Dict/Top (solved wanted):
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
Step 97[l:4,d:1] Top react: Dict/Top (solved wanted):
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
Step 98[l:4,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak7K {0}:: Monad IO
Step 99[l:4,d:0] Top react: Dict/Top (cached):
[WD] $dApplicative_ak7O {0}:: Applicative IO
Step 100[l:4,d:0] Top react: Dict/Top (cached):
[WD] $dMonad_ak84 {0}:: Monad IO
Step 101[l:5,d:0] Kept as inert:
[G] $d~_akbU {0}:: (ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
~
((a_ak7T[ssk:5] |> Sym (<k1_ak7S[ssk:5]>_N
->_N Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7U[ssk:5] :: ((* -> *)
-> (* -> *)
-> *
-> *))
Step 102[l:5,d:0] Kept as inert:
[G] $d~~_akbV {0}:: (ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
~~
((a_ak7T[ssk:5] |> Sym (<k1_ak7S[ssk:5]>_N
->_N Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7U[ssk:5] :: ((* -> *)
-> (* -> *)
-> *
-> *))
Kick out, tv = a_ak7T[ssk:5]
n-kicked = 2
kicked_out = WL {Non-eqs = [G] $d~_akbU {0}:: (ComposeK :: ((*
-> *)
-> (* -> *) -> * -> *))
~
((a_ak7T[ssk:5] |> Sym (<k1_ak7S[ssk:5]>_N
->_N Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7U[ssk:5] :: ((*
-> *)
-> (*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbV {0}:: (ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
~~
((a_ak7T[ssk:5] |> Sym (<k1_ak7S[ssk:5]>_N
->_N Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7U[ssk:5] :: ((*
-> *)
-> (*
-> *)
-> *
-> *)) (CDictCan)}
Residual inerts = {Equalities: [G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
(ComposeK Maybe :: ((* -> *)
-> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (*
-> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
(ComposeK Maybe :: ((* -> *)
-> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Step 103[l:5,d:4] Kept as inert:
[G] cobox_akc3 {4}:: (a_ak7T[ssk:5] :: (k1_ak7S[ssk:5]
-> k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7S[ssk:5]
-> k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
Step 104[l:5,d:5] Definitely not equal:
[G] cobox_akc4 {5}:: ((k1_ak7S[ssk:5]
-> (* -> *) -> (* -> *) -> * -> *) :: *)
GHC.Prim.~#
((forall k. (* -> *) -> (k -> *) -> k -> *) :: *)
This file has been truncated, but you can view the full file.
Tc2 (src)
Tc3
txExtendKindEnv []
txExtendKindEnv []
kcTyClGroup
module Main
data ComposeK (f_ae7P :: k'_atP -> Type) (g_ae7R :: k_ae7Q
-> k'_atP) a_ae7S
= ComposeK (f_ae7P (g_ae7R a_ae7S))
txExtendKindEnv [(ComposeK, APromotionErr TyConPE)]
env2
[(k'_atP, Type variable ‘k'_atP’ = k'_atP[sig:1]),
(k_ae7Q, Type variable ‘k_ae7Q’ = k_ae7Q[sig:1])]
lk1 k'_atP
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
*
<*>_N
lk1 Type
tcTyVar2b
Type :: *
*
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
*
<*>_N
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
*
<*>_N
env2 [(f_ae7P, Type variable ‘f_ae7P’ = f_ae7P[sk:1])]
lk1 k_ae7Q
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
*
<*>_N
lk1 k'_atP
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
*
<*>_N
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
*
<*>_N
env2 [(g_ae7R, Type variable ‘g_ae7R’ = g_ae7R[sk:1])]
env2 [(a_ae7S, Type variable ‘a_ae7S’ = a_ae7S[sk:1])]
kcTyClGroup: initial kinds
ComposeK :: (k'_atP[sig:1] -> *)
-> (k_ae7Q[sig:1] -> k'_atP[sig:1]) -> k_aelr[tau:1] -> *
(ComposeK, APromotionErr RecDataConPE)
txExtendKindEnv
[(ComposeK, ATcTyCon ComposeK),
(ComposeK, APromotionErr RecDataConPE)]
env2
[(k'_atP, Type variable ‘k'_atP’ = k'_atP[sig:1]),
(k_ae7Q, Type variable ‘k_ae7Q’ = k_ae7Q[sig:1]),
(f_ae7P, Type variable ‘f_ae7P’ = f_ae7P[sk:1]),
(g_ae7R, Type variable ‘g_ae7R’ = g_ae7R[sk:1]),
(a_ae7S, Type variable ‘a_ae7S’ = a_ae7S[sk:1])]
env2 []
lk1 f_ae7P
tc_infer_args (vis)
[anon] k'_atP[sig:1]
(g_ae7R a_ae7S)
lk1 g_ae7R
tc_infer_args (vis)
[anon] k_ae7Q[sig:1]
a_ae7S
lk1 a_ae7S
u_tys
tclvl 1
k_aelr[tau:1] ~ k_ae7Q[sig:1]
arising from a type equality k_aelr[tau:1] ~ k_ae7Q[sig:1]
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from
k_aelr[tau:1] ~ k_ae7Q[sig:1]
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
k_aelr[tau:1] ~ k_ae7Q[sig:1]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar k_aelr[tau:1] := k_ae7Q[sig:1]
u_tys yields no coercion
checkExpectedKind
k_aelr[tau:1]
k_ae7Q[sig:1]
<k_ae7Q[sig:1]>_N
u_tys
tclvl 1
k'_atP[sig:1] ~ k'_atP[sig:1]
arising from a type equality k'_atP[sig:1] ~ k'_atP[sig:1]
u_tys yields no coercion
checkExpectedKind
k'_atP[sig:1]
k'_atP[sig:1]
<k'_atP[sig:1]>_N
u_tys
tclvl 1
* ~ TYPE t_aels[tau:1]
arising from a type equality * ~ TYPE t_aels[tau:1]
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ t_aels[tau:1]
arising from a type equality * ~ TYPE t_aels[tau:1]
u_tys
tclvl 1
GHC.Types.RuntimeRep ~ GHC.Types.RuntimeRep
arising from a kind equality arising from
t_aels[tau:1] ~ 'GHC.Types.LiftedRep
u_tys yields no coercion
writeMetaTyVar t_aels[tau:1] := 'GHC.Types.LiftedRep
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
TYPE t_aels[tau:1]
<*>_N
solveEqualities { wanted = WC {}
newTcEvBinds unique = aelt
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End solveEqualities }
reportAllUnsolved {
newTcEvBinds unique = aelu
reportAllUnsolved }
quantifyZonkedTyVars
DV {dv_kvs = [atP :-> k'_atP[sig:1], ae7Q :-> k_ae7Q[sig:1]]
dv_tvs = []}
[]
Skolemising k'_atP[sig:1] := k'_atP[sk:1]
writeMetaTyVar k'_atP[sig:1] := k'_atP[sk:1]
Skolemising k_ae7Q[sig:1] := k_ae7Q[sk:1]
writeMetaTyVar k_ae7Q[sig:1] := k_ae7Q[sk:1]
quantifyTyVars
globals: []
nondep: []
dep: [k'_atP[sig:1], k_ae7Q[sig:1]]
dep_kvs' [k'_atP[sk:1], k_ae7Q[sk:1]]
nondep_tvs' []
Generalise kind
ComposeK
[f_ae7P[sk:1], g_ae7R[sk:1], a_ae7S[sk:1]]
[k'_atP[sk:1], k_ae7Q[sk:1]]
[{k'_atP[sk:1]}, {k_ae7Q[sk:1]}, f_ae7P[sk:1], g_ae7R[sk:1],
a_ae7S[sk:1]]
*
[{k'_atP}, {k_ae7Q}, f_ae7P, g_ae7R, a_ae7S]
*
[f_ae7P[sk:1], g_ae7R[sk:1], a_ae7S[sk:1]]
[k'_atP[sig:1], k_ae7Q[sig:1], f_ae7P[sk:1], g_ae7R[sk:1],
a_ae7S[sk:1]]
kcTyClGroup result
ComposeK :: forall k' k. (k' -> *) -> (k -> k') -> k -> *
tcTyAndCl generalized kinds
(ComposeK, [{k'_atP}, {k_ae7Q}, f_ae7P, g_ae7R, a_ae7S], *)
txExtendKindEnv [(ComposeK, ATcTyCon ComposeK)]
tcTyAndCl-x
data ComposeK (f_ae7P :: k'_atP -> Type) (g_ae7R :: k_ae7Q
-> k'_atP) a_ae7S
= ComposeK (f_ae7P (g_ae7R a_ae7S))
env2
[(k'_atP, Type variable ‘k'_atP’ = k'_atP[sig:1]),
(k_ae7Q, Type variable ‘k_ae7Q’ = k_ae7Q[sig:1]),
(f_ae7P, Type variable ‘f_ae7P’ = f_ae7P[sk:1]),
(g_ae7R, Type variable ‘g_ae7R’ = g_ae7R[sk:1]),
(a_ae7S, Type variable ‘a_ae7S’ = a_ae7S[sk:1])]
solveEqualities { wanted = WC {}
newTcEvBinds unique = aelw
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End solveEqualities }
reportAllUnsolved {
newTcEvBinds unique = aelx
reportAllUnsolved }
tcConDecl 1 ComposeK
env2 []
tcConDecl ComposeK tvs: []
tcConArg 1 (f_ae7P (g_ae7R a_ae7S))
lk1 f_ae7P
tc_infer_args (vis)
[anon] k'
(g_ae7R a_ae7S)
lk1 g_ae7R
tc_infer_args (vis)
[anon] k
a_ae7S
lk1 a_ae7S
u_tys
tclvl 1
k_aelr[tau:1] ~ k
arising from a type equality k_aelr[tau:1] ~ k
found filled tyvar k_aelr[tau:1] :-> k
u_tys yields no coercion
checkExpectedKind
k_aelr[tau:1]
k
<k>_N
u_tys
tclvl 1
k' ~ k'
arising from a type equality k' ~ k'
u_tys yields no coercion
checkExpectedKind
k'
k'
<k'>_N
u_tys
tclvl 1
* ~ TYPE t_aely[tau:1]
arising from a type equality * ~ TYPE t_aely[tau:1]
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ t_aely[tau:1]
arising from a type equality * ~ TYPE t_aely[tau:1]
u_tys
tclvl 1
GHC.Types.RuntimeRep ~ GHC.Types.RuntimeRep
arising from a kind equality arising from
t_aely[tau:1] ~ 'GHC.Types.LiftedRep
u_tys yields no coercion
writeMetaTyVar t_aely[tau:1] := 'GHC.Types.LiftedRep
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
TYPE t_aely[tau:1]
<*>_N
tcConArg 2 (f_ae7P (g_ae7R a_ae7S))
lookupCF
ComposeK
Nothing
[]
tcExplicitTKBndrs
Hs vars: []
tvs:
tcImplicitTKBndrs
[]
[]
solveEqualities { wanted = WC {}
newTcEvBinds unique = aelz
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End solveEqualities }
reportAllUnsolved {
newTcEvBinds unique = aelA
reportAllUnsolved }
quantifyZonkedTyVars
DV {dv_kvs = [ae7Q :-> k_ae7Q, atP :-> k'_atP]
dv_tvs = [ae7S :-> a_ae7S[sk:1], ae7R :-> g_ae7R[sk:1],
ae7P :-> f_ae7P[sk:1]]}
[atP :-> k'_atP, ae7P :-> f_ae7P, ae7Q :-> k_ae7Q, ae7R :-> g_ae7R,
ae7S :-> a_ae7S]
quantifyTyVars
globals: [atP :-> k'_atP, ae7P :-> f_ae7P, ae7Q :-> k_ae7Q,
ae7R :-> g_ae7R, ae7S :-> a_ae7S]
nondep: []
dep: []
dep_kvs' []
nondep_tvs' []
tcConDecl 2
ComposeK
[]
tcConDecl 2 ComposeK
tcDataDefn
ComposeK
[{k'_atP}, {k_ae7Q}, f_ae7P, g_ae7R, a_ae7S]
[]
Starting synonym cycle check [ComposeK]
Done synonym cycle check [ComposeK]
Starting family consistency check [ComposeK]
Done family consistency [ComposeK]
Starting validity check [ComposeK]
Starting validity for tycon ComposeK
checkValidTyCon
ComposeK
Nothing
cvtc1 ComposeK
cvtc2 ComposeK
checkValidDataCon
ComposeK
ComposeK
[k'_atP, k_ae7Q, f_ae7P, g_ae7R, a_ae7S]
ComposeK f g a :: *
ComposeK f g a :: *
checkValidDataCon 2
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
checkValidType
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a :: *
check_type
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
True
Ambiguity check for
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
tcSubType_NC
the type of the constructor ‘ComposeK’
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
tc_sub_tc_type (general case)
ty_actual = forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
ty_expected = forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
tcSkolemise
tcSkolemise
1
expected_ty forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
inst tyvars [k'_aelH[sk:2], k_aelI[sk:2], f_aelJ[sk:2],
g_aelK[sk:2], a_aelL[sk:2]]
given []
inst type f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
tc_sub_type_ds
ty_actual = forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
ty_expected = f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
Instantiating
all tyvars? True
origin arising from a type equality forall k' k (f :: k'
-> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
~
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
type forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
theta []
leave_bndrs []
with [k'_aelM[tau:2], k_aelN[tau:2], f_aelO[tau:2], g_aelP[tau:2],
a_aelQ[tau:2]]
theta: []
tc_sub_type_ds
ty_actual = f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
ty_expected = f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
tc_sub_type_ds
ty_actual = ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
ty_expected = ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
deeply_instantiate final subst
origin: arising from a type equality forall k' k (f :: k'
-> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
~
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
type: ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
new type: ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
subst: [TCvSubst
In scope: InScope {k'_aelM k_aelN f_aelO g_aelP a_aelQ}
Type env: []
Co env: []]
u_tys
tclvl 2
ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
k'_aelM[tau:2] ~ k'_aelH[sk:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
k'_aelM[tau:2] ~ k'_aelH[sk:2]
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
k'_aelM[tau:2] ~ k'_aelH[sk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar k'_aelM[tau:2] := k'_aelH[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
k_aelN[tau:2] ~ k_aelI[sk:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
k_aelN[tau:2] ~ k_aelI[sk:2]
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
k_aelN[tau:2] ~ k_aelI[sk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar k_aelN[tau:2] := k_aelI[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
f_aelO[tau:2] ~ f_aelJ[sk:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
k'_aelH[sk:2] -> * ~ k'_aelM[tau:2] -> *
arising from a kind equality arising from
f_aelO[tau:2] ~ f_aelJ[sk:2]
u_tys
tclvl 2
k'_aelH[sk:2] ~ k'_aelM[tau:2]
arising from a kind equality arising from
f_aelO[tau:2] ~ f_aelJ[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
f_aelO[tau:2] ~ f_aelJ[sk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar f_aelO[tau:2] := f_aelJ[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
g_aelP[tau:2] ~ g_aelK[sk:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
k_aelI[sk:2] -> k'_aelH[sk:2] ~ k_aelN[tau:2] -> k'_aelM[tau:2]
arising from a kind equality arising from
g_aelP[tau:2] ~ g_aelK[sk:2]
u_tys
tclvl 2
k_aelI[sk:2] ~ k_aelN[tau:2]
arising from a kind equality arising from
g_aelP[tau:2] ~ g_aelK[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
k'_aelH[sk:2] ~ k'_aelM[tau:2]
arising from a kind equality arising from
g_aelP[tau:2] ~ g_aelK[sk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar g_aelP[tau:2] := g_aelK[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
a_aelQ[tau:2] ~ a_aelL[sk:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
k_aelI[sk:2] ~ k_aelN[tau:2]
arising from a kind equality arising from
a_aelQ[tau:2] ~ a_aelL[sk:2]
u_tys yields no coercion
writeMetaTyVar a_aelQ[tau:2] := a_aelL[sk:2]
u_tys yields no coercion
u_tys yields no coercion
tc_sub_tc_type (general case)
ty_actual = f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
ty_expected = f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
tcSkolemise
tcSkolemise
2
expected_ty f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
inst tyvars []
given []
inst type f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
tc_sub_type_ds
ty_actual = f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
ty_expected = f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
deeply_instantiate final subst
origin: arising from a type expected by the context:
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
type: f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
new type: f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
subst: [TCvSubst
In scope: InScope {k'_aelH k_aelI f_aelJ g_aelK a_aelL}
Type env: []
Co env: []]
u_tys
tclvl 2
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
~
f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
f_aelJ[sk:2] ~ f_aelO[tau:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
g_aelK[sk:2] a_aelL[sk:2] ~ g_aelP[tau:2] a_aelQ[tau:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys
tclvl 2
g_aelK[sk:2] ~ g_aelP[tau:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys yields no coercion
u_tys
tclvl 2
a_aelL[sk:2] ~ a_aelQ[tau:2]
arising from a type equality f_aelO[tau:2] (g_aelP[tau:2] a_aelQ[tau:2])
-> ComposeK f_aelO[tau:2] g_aelP[tau:2] a_aelQ[tau:2]
~
f_aelJ[sk:2] (g_aelK[sk:2] a_aelL[sk:2])
-> ComposeK f_aelJ[sk:2] g_aelK[sk:2] a_aelL[sk:2]
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
simplifyAmbiguityCheck {
type = forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
wanted = WC {}
newTcEvBinds unique = aelR
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End simplifyAmbiguityCheck }
reportUnsolved(ambig) {
newTcEvBinds unique = aelS
reportUnsolved(ambig) }
Done ambiguity check for
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
checkValidType done
forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a :: *
Done validity of data con
ComposeK forall k' k (f :: k' -> *) (g :: k -> k') (a :: k).
f (g a) -> ComposeK f g a
Done validity for tycon ComposeK
Done validity check [ComposeK]
tcAddImplicits
tycons [ComposeK]
implicits [Data constructor ‘ComposeK’, Identifier ‘Main.ComposeK’]
txExtendKindEnv []
env2 []
Adding instances:
addFamInsts
tcAddImplicits
tycons []
implicits []
txExtendKindEnv []
env2 []
tcDeriving False
tcDeriving 1 []
rnd
Adding instances:
Tc3b
Tc3c
tcSemigroupWarnings
Tc4
Tc4a
Tc5
txExtendKindEnv []
env2 []
lk1 IO
tcTyVar2a
IO
* -> *
tc_infer_args (vis)
[anon] *
()
tc_hs_type tuple []
finish_tuple
*
[]
*
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
*
<*>_N
u_tys
tclvl 1
* ~ TYPE t_aelT[tau:1]
arising from a type equality * ~ TYPE t_aelT[tau:1]
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ t_aelT[tau:1]
arising from a type equality * ~ TYPE t_aelT[tau:1]
u_tys
tclvl 1
GHC.Types.RuntimeRep ~ GHC.Types.RuntimeRep
arising from a kind equality arising from
t_aelT[tau:1] ~ 'GHC.Types.LiftedRep
u_tys yields no coercion
writeMetaTyVar t_aelT[tau:1] := 'GHC.Types.LiftedRep
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
TYPE t_aelT[tau:1]
<*>_N
tcImplicitTKBndrs
[]
[]
solveEqualities { wanted = WC {}
newTcEvBinds unique = agEs
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End solveEqualities }
reportAllUnsolved {
newTcEvBinds unique = agEt
reportAllUnsolved }
decideKindGeneralisationPlan
type: IO ()
ftvs: []
should gen? True
quantifyZonkedTyVars
DV {dv_kvs = [] dv_tvs = []}
[]
quantifyTyVars
globals: []
nondep: []
dep: []
dep_kvs' []
nondep_tvs' []
checkValidType IO () :: *
Ambiguity check for IO ()
tcSubType_NC
the type signature for ‘main’
IO ()
IO ()
tc_sub_tc_type (general case)
ty_actual = IO ()
ty_expected = IO ()
tcSkolemise
tcSkolemise
1
expected_ty IO ()
inst tyvars []
given []
inst type IO ()
tc_sub_type_ds
ty_actual = IO ()
ty_expected = IO ()
deeply_instantiate final subst
origin: arising from a type equality IO () ~ IO ()
type: IO ()
new type: IO ()
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 1
IO () ~ IO ()
arising from a type equality IO () ~ IO ()
u_tys
tclvl 1
() ~ ()
arising from a type equality IO () ~ IO ()
u_tys yields no coercion
u_tys yields no coercion
simplifyAmbiguityCheck {
type = IO ()
wanted = WC {}
newTcEvBinds unique = agEu
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End simplifyAmbiguityCheck }
reportUnsolved(ambig) {
newTcEvBinds unique = agEv
reportUnsolved(ambig) }
Done ambiguity check for IO ()
checkValidType done IO () :: *
env2 [(main, Identifier[main::IO (), TopLevelLet])]
------------------------------------------------
Bindings for { [main]
Generalisation plan CheckGen main :: IO ()
tcPolyCheck
main
Typeable1.hs:8:1-13
tcExtendIdBndrs [main_agEw[<NotTopLevel>]]
env2 []
tcMatchesFun
main_agEw
Check{IO ()}
tcSkolemise
tcSkolemise
1
expected_ty IO ()
inst tyvars []
given []
inst type IO ()
tcBody Check{IO ()}
txExtendKindEnv []
env2 []
lk1 ComposeK
tcTyVar2a
ComposeK
forall k' k. (k' -> *) -> (k -> k') -> k -> *
tc_infer_args (invis) {k'_atP}
tc_infer_args (invis) {k_ae7Q}
tc_infer_args (vis)
[anon] k' -> *
Maybe
lk1 Maybe
tcTyVar2a
Maybe
* -> *
u_tys
tclvl 1
* -> * ~ k'_agEy[tau:1] -> *
arising from a type equality * -> * ~ k'_agEy[tau:1] -> *
u_tys
tclvl 1
* ~ k'_agEy[tau:1]
arising from a type equality * -> * ~ k'_agEy[tau:1] -> *
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from k'_agEy[tau:1] ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from k'_agEy[tau:1] ~ *
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar k'_agEy[tau:1] := *
u_tys yields no coercion
u_tys
tclvl 1
* ~ *
arising from a type equality * -> * ~ k'_agEy[tau:1] -> *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * -> * ~ k'_agEy[tau:1] -> *
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
* -> *
k'_agEy[tau:1] -> *
<* -> *>_N
tc_infer_args (vis)
[anon] k -> k'
Maybe
lk1 Maybe
tcTyVar2a
Maybe
* -> *
u_tys
tclvl 1
* -> * ~ k_agEz[tau:1] -> k'_agEy[tau:1]
arising from a type equality * -> *
~
k_agEz[tau:1] -> k'_agEy[tau:1]
u_tys
tclvl 1
* ~ k_agEz[tau:1]
arising from a type equality * -> *
~
k_agEz[tau:1] -> k'_agEy[tau:1]
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from k_agEz[tau:1] ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from k_agEz[tau:1] ~ *
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar k_agEz[tau:1] := *
u_tys yields no coercion
u_tys
tclvl 1
* ~ k'_agEy[tau:1]
arising from a type equality * -> *
~
k_agEz[tau:1] -> k'_agEy[tau:1]
found filled tyvar k'_agEy[tau:1] :-> *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * -> *
~
k_agEz[tau:1] -> k'_agEy[tau:1]
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
* -> *
k_agEz[tau:1] -> k'_agEy[tau:1]
<* -> *>_N
tc_infer_args (vis)
[anon] k
Int
lk1 Int
tcTyVar2a
Int
*
u_tys
tclvl 1
* ~ k_agEz[tau:1]
arising from a type equality * ~ k_agEz[tau:1]
found filled tyvar k_agEz[tau:1] :-> *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ k_agEz[tau:1]
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
k_agEz[tau:1]
<*>_N
u_tys
tclvl 1
* ~ TYPE t_agEx[tau:1]
arising from a type equality * ~ TYPE t_agEx[tau:1]
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ t_agEx[tau:1]
arising from a type equality * ~ TYPE t_agEx[tau:1]
u_tys
tclvl 1
GHC.Types.RuntimeRep ~ GHC.Types.RuntimeRep
arising from a kind equality arising from
t_agEx[tau:1] ~ 'GHC.Types.LiftedRep
u_tys yields no coercion
writeMetaTyVar t_agEx[tau:1] := 'GHC.Types.LiftedRep
u_tys yields no coercion
u_tys yields no coercion
checkExpectedKind
*
TYPE t_agEx[tau:1]
<*>_N
tcImplicitTKBndrs
[]
[]
solveEqualities { wanted = WC {}
newTcEvBinds unique = agEA
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End solveEqualities }
reportAllUnsolved {
newTcEvBinds unique = agEB
reportAllUnsolved }
decideKindGeneralisationPlan
type: ComposeK Maybe Maybe Int
ftvs: [k'_agEy[tau:1], k_agEz[tau:1]]
should gen? True
quantifyZonkedTyVars
DV {dv_kvs = [] dv_tvs = []}
[]
quantifyTyVars
globals: []
nondep: []
dep: []
dep_kvs' []
nondep_tvs' []
checkValidType ComposeK Maybe Maybe Int :: *
Ambiguity check for ComposeK Maybe Maybe Int
tcSubType_NC
the type signature for ‘x_ae7T’
ComposeK Maybe Maybe Int
ComposeK Maybe Maybe Int
tc_sub_tc_type (general case)
ty_actual = ComposeK Maybe Maybe Int
ty_expected = ComposeK Maybe Maybe Int
tcSkolemise
tcSkolemise
1
expected_ty ComposeK Maybe Maybe Int
inst tyvars []
given []
inst type ComposeK Maybe Maybe Int
tc_sub_type_ds
ty_actual = ComposeK Maybe Maybe Int
ty_expected = ComposeK Maybe Maybe Int
deeply_instantiate final subst
origin: arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
type: ComposeK Maybe Maybe Int
new type: ComposeK Maybe Maybe Int
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 1
ComposeK Maybe Maybe Int ~ ComposeK Maybe Maybe Int
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys
tclvl 1
* ~ *
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 1
* ~ *
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 1
Maybe ~ Maybe
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys
tclvl 1
Maybe ~ Maybe
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys
tclvl 1
Int ~ Int
arising from a type equality ComposeK Maybe Maybe Int
~
ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys yields no coercion
simplifyAmbiguityCheck {
type = ComposeK Maybe Maybe Int
wanted = WC {}
newTcEvBinds unique = agEC
solveWanteds { WC {}
solveSimpleWanteds { {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveWanteds middle
simples1 = {}
simples2 = {}
solveWanteds }
final wc = WC {}
current evbinds = {}
End simplifyAmbiguityCheck }
reportUnsolved(ambig) {
newTcEvBinds unique = agED
reportUnsolved(ambig) }
Done ambiguity check for ComposeK Maybe Maybe Int
checkValidType done ComposeK Maybe Maybe Int :: *
env2
[(x_ae7T,
Identifier[x_ae7T::ComposeK Maybe Maybe Int, TopLevelLet])]
------------------------------------------------
Bindings for { [x_ae7T]
Generalisation plan CheckGen x_ae7T :: ComposeK Maybe Maybe Int
tcPolyCheck
x_ae7T
Typeable1.hs:10:9-37
tcExtendIdBndrs [x_agEE[<NotTopLevel>]]
env2 []
tcMatchesFun
x_agEE
Check{ComposeK Maybe Maybe Int}
tcSkolemise
tcSkolemise
1
expected_ty ComposeK Maybe Maybe Int
inst tyvars []
given []
inst type ComposeK Maybe Maybe Int
tcBody Check{ComposeK Maybe Maybe Int}
tcInferId
undefined :: forall (a :: TYPE r).
GHC.Stack.Types.HasCallStack =>
a
tcCheckId
undefined
forall (a :: TYPE r). GHC.Stack.Types.HasCallStack => a
Check{ComposeK Maybe Maybe Int}
tcWrapResult
Actual: forall (a :: TYPE r). GHC.Stack.Types.HasCallStack => a
Expected: Check{ComposeK Maybe Maybe Int}
tc_sub_type_ds
ty_actual = forall (a :: TYPE r).
GHC.Stack.Types.HasCallStack =>
a
ty_expected = ComposeK Maybe Maybe Int
instCallConstraints [$dIP_ajMr]
Instantiating
all tyvars? True
origin arising from a use of ‘undefined’
type forall (a :: TYPE r). GHC.Stack.Types.HasCallStack => a
theta [GHC.Stack.Types.HasCallStack]
leave_bndrs []
with [r_agGz[tau:1], a_agGA[tau:1]]
theta: [GHC.Stack.Types.HasCallStack]
tc_sub_type_ds
ty_actual = a_agGA[tau:1]
ty_expected = ComposeK Maybe Maybe Int
u_tys
tclvl 1
a_agGA[tau:1] ~ ComposeK Maybe Maybe Int
arising from a type equality a_agGA[tau:1]
~
ComposeK Maybe Maybe Int
u_tys
tclvl 1
* ~ TYPE r_agGz[tau:1]
arising from a kind equality arising from
a_agGA[tau:1] ~ ComposeK Maybe Maybe Int
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ r_agGz[tau:1]
arising from a kind equality arising from
a_agGA[tau:1] ~ ComposeK Maybe Maybe Int
u_tys
tclvl 1
GHC.Types.RuntimeRep ~ GHC.Types.RuntimeRep
arising from a kind equality arising from
r_agGz[tau:1] ~ 'GHC.Types.LiftedRep
u_tys yields no coercion
writeMetaTyVar r_agGz[tau:1] := 'GHC.Types.LiftedRep
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_agGA[tau:1] := ComposeK Maybe Maybe Int
u_tys yields no coercion
tcSpecPrags x_ae7T []
} End of bindings for
[x_ae7T]
NonRecursive
x_ae7T ComposeK Maybe Maybe Int
tcExtendIdBndrs [x_ae7T[<NotTopLevel>]]
env2
[(x_ae7T,
Identifier[x_ae7T::ComposeK Maybe Maybe Int, TopLevelLet])]
tcInferId
>>= :: forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
instCallConstraints [$dMonad_ajME]
Instantiating
all tyvars? True
origin arising from a do statement
type forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
theta [Monad m]
leave_bndrs []
with [m_ajMD[tau:1]]
theta: [Monad m_ajMD[tau:1]]
Instantiating
all tyvars? True
origin arising from a do statement
type forall a b.
m_ajMD[tau:1] a -> (a -> m_ajMD[tau:1] b) -> m_ajMD[tau:1] b
theta []
leave_bndrs []
with [a_ajMF[tau:1], b_ajMG[tau:1]]
theta: []
tcSkolemise
tcSkolemise
1
expected_ty m_ajMD[tau:1] a_ajMF[tau:1]
inst tyvars []
given []
inst type m_ajMD[tau:1] a_ajMF[tau:1]
tcSkolemise
tcSkolemise
1
expected_ty a_ajMF[tau:1] -> m_ajMD[tau:1] b_ajMG[tau:1]
inst tyvars []
given []
inst type a_ajMF[tau:1] -> m_ajMD[tau:1] b_ajMG[tau:1]
tcSkolemise
tcSkolemise
1
expected_ty m_ajMD[tau:1] b_ajMG[tau:1]
inst tyvars []
given []
inst type m_ajMD[tau:1] b_ajMG[tau:1]
tcSubTypeDS_O
arising from a do statement
a type expected by the context
m_ajMD[tau:1] b_ajMG[tau:1]
Check{IO ()}
tc_sub_type_ds
ty_actual = m_ajMD[tau:1] b_ajMG[tau:1]
ty_expected = IO ()
deeply_instantiate final subst
origin: arising from a do statement
type: m_ajMD[tau:1] b_ajMG[tau:1]
new type: m_ajMD[tau:1] b_ajMG[tau:1]
subst: [TCvSubst
In scope: InScope {m_ajMD b_ajMG}
Type env: []
Co env: []]
u_tys
tclvl 1
m_ajMD[tau:1] b_ajMG[tau:1] ~ IO ()
arising from a type equality m_ajMD[tau:1] b_ajMG[tau:1] ~ IO ()
u_tys
tclvl 1
m_ajMD[tau:1] ~ IO
arising from a type equality m_ajMD[tau:1] b_ajMG[tau:1] ~ IO ()
u_tys
tclvl 1
* -> * ~ * -> *
arising from a kind equality arising from m_ajMD[tau:1] ~ IO
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from m_ajMD[tau:1] ~ IO
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ajMD[tau:1] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from m_ajMD[tau:1] ~ IO
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ajMD[tau:1] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ajMD[tau:1] := IO
u_tys yields no coercion
u_tys
tclvl 1
b_ajMG[tau:1] ~ ()
arising from a type equality m_ajMD[tau:1] b_ajMG[tau:1] ~ IO ()
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from b_ajMG[tau:1] ~ ()
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from b_ajMG[tau:1] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ajMG[tau:1] := ()
u_tys yields no coercion
u_tys yields no coercion
Application rule ($)
newOpenInferExpType ajMH False 1
tcInferId
pure :: forall (f :: * -> *). Applicative f => forall a. a -> f a
tcCheckId
pure
forall (f :: * -> *). Applicative f => forall a. a -> f a
Infer{ajMH,1 False}
tcWrapResult
Actual: forall (f :: * -> *). Applicative f => forall a. a -> f a
Expected: Infer{ajMH,1 False}
u_tys
tclvl 1
* ~ TYPE t_ajMS[tau:1]
arising from a type equality * ~ TYPE t_ajMS[tau:1]
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ t_ajMS[tau:1]
arising from a type equality * ~ TYPE t_ajMS[tau:1]
u_tys
tclvl 1
GHC.Types.RuntimeRep ~ GHC.Types.RuntimeRep
arising from a kind equality arising from
t_ajMS[tau:1] ~ 'GHC.Types.LiftedRep
u_tys yields no coercion
writeMetaTyVar t_ajMS[tau:1] := 'GHC.Types.LiftedRep
u_tys yields no coercion
u_tys yields no coercion
Filling ExpType
ajMH := forall (f :: * -> *). Applicative f => forall a. a -> f a
instCallConstraints [$dApplicative_ajMU]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall (f :: * -> *). Applicative f => forall a. a -> f a
theta [Applicative f]
leave_bndrs []
with [f_ajMT[tau:1]]
theta: [Applicative f_ajMT[tau:1]]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall a. a -> f_ajMT[tau:1] a
theta []
leave_bndrs []
with [a_ajMV[tau:1]]
theta: []
tcPolyExprNC Check{a_ajMV[tau:1]}
tcSkolemise
tcSkolemise
1
expected_ty a_ajMV[tau:1]
inst tyvars []
given []
inst type a_ajMV[tau:1]
tcInferId typeOf :: forall a. Typeable a => a -> TypeRep a
instCallConstraints [$dTypeable_ajNi]
Instantiating
all tyvars? True
origin arising from a use of ‘typeOf’
type forall a. Typeable a => a -> TypeRep a
theta [Typeable a]
leave_bndrs []
with [a_ajNh[tau:1]]
theta: [Typeable a_ajNh[tau:1]]
tcPolyExprNC Check{a_ajNh[tau:1]}
tcSkolemise
tcSkolemise
1
expected_ty a_ajNh[tau:1]
inst tyvars []
given []
inst type a_ajNh[tau:1]
tcInferId x_ae7T :: ComposeK Maybe Maybe Int
tcCheckId
x_ae7T
ComposeK Maybe Maybe Int
Check{a_ajNh[tau:1]}
tcWrapResult
Actual: ComposeK Maybe Maybe Int
Expected: Check{a_ajNh[tau:1]}
tc_sub_type_ds
ty_actual = ComposeK Maybe Maybe Int
ty_expected = a_ajNh[tau:1]
deeply_instantiate final subst
origin: arising from a use of ‘x_ae7T’
type: ComposeK Maybe Maybe Int
new type: ComposeK Maybe Maybe Int
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 1
ComposeK Maybe Maybe Int ~ a_ajNh[tau:1]
arising from a type equality ComposeK Maybe Maybe Int
~
a_ajNh[tau:1]
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from
a_ajNh[tau:1] ~ ComposeK Maybe Maybe Int
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ajNh[tau:1] ~ ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ajNh[tau:1] := ComposeK Maybe Maybe Int
u_tys yields no coercion
tc_sub_type_ds
ty_actual = TypeRep a_ajNh[tau:1]
ty_expected = a_ajMV[tau:1]
deeply_instantiate final subst
origin: arising from a use of ‘typeOf’
type: TypeRep a_ajNh[tau:1]
new type: TypeRep a_ajNh[tau:1]
subst: [TCvSubst
In scope: InScope {a_ajNh}
Type env: []
Co env: []]
u_tys
tclvl 1
TypeRep a_ajNh[tau:1] ~ a_ajMV[tau:1]
arising from a type equality TypeRep a_ajNh[tau:1] ~ a_ajMV[tau:1]
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from
a_ajMV[tau:1] ~ TypeRep (ComposeK Maybe Maybe Int)
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ajMV[tau:1] ~ TypeRep (ComposeK Maybe Maybe Int)
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ajMV[tau:1] := TypeRep (ComposeK Maybe Maybe Int)
u_tys yields no coercion
u_tys
tclvl 1
* ~ *
arising from a type equality * ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a type equality * ~ *
u_tys yields no coercion
u_tys yields no coercion
tc_sub_type_ds
ty_actual = f_ajMT[tau:1] a_ajMV[tau:1]
ty_expected = m_ajMD[tau:1] a_ajMF[tau:1]
deeply_instantiate final subst
origin: arising from a use of ‘pure’
type: f_ajMT[tau:1] a_ajMV[tau:1]
new type: f_ajMT[tau:1] a_ajMV[tau:1]
subst: [TCvSubst
In scope: InScope {f_ajMT a_ajMV}
Type env: []
Co env: []]
u_tys
tclvl 1
f_ajMT[tau:1] a_ajMV[tau:1] ~ m_ajMD[tau:1] a_ajMF[tau:1]
arising from a type equality f_ajMT[tau:1] a_ajMV[tau:1]
~
m_ajMD[tau:1] a_ajMF[tau:1]
u_tys
tclvl 1
f_ajMT[tau:1] ~ m_ajMD[tau:1]
arising from a type equality f_ajMT[tau:1] a_ajMV[tau:1]
~
m_ajMD[tau:1] a_ajMF[tau:1]
u_tys
tclvl 1
* -> * ~ * -> *
arising from a kind equality arising from f_ajMT[tau:1] ~ IO
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from f_ajMT[tau:1] ~ IO
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ajMT[tau:1] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from f_ajMT[tau:1] ~ IO
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ajMT[tau:1] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar f_ajMT[tau:1] := IO
u_tys yields no coercion
u_tys
tclvl 1
a_ajMV[tau:1] ~ a_ajMF[tau:1]
arising from a type equality f_ajMT[tau:1] a_ajMV[tau:1]
~
m_ajMD[tau:1] a_ajMF[tau:1]
found filled tyvar
a_ajMV[tau:1] :-> TypeRep (ComposeK Maybe Maybe Int)
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from
a_ajMF[tau:1] ~ TypeRep (ComposeK Maybe Maybe Int)
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ajMF[tau:1] ~ TypeRep (ComposeK Maybe Maybe Int)
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ajMF[tau:1] := TypeRep (ComposeK Maybe Maybe Int)
u_tys yields no coercion
u_tys yields no coercion
tc_sub_tc_type (general case)
ty_actual = a_ajMF[tau:1]
ty_expected = TypeRep t_ajUa[tau:1]
tcSkolemise
tcSkolemise
1
expected_ty TypeRep t_ajUa[tau:1]
inst tyvars []
given []
inst type TypeRep t_ajUa[tau:1]
tc_sub_type_ds
ty_actual = a_ajMF[tau:1]
ty_expected = TypeRep t_ajUa[tau:1]
tcSubTypeDS_NC_O following filled act meta-tyvar:
a_ajMF[tau:1] --> TypeRep (ComposeK Maybe Maybe Int)
tc_sub_type_ds
ty_actual = TypeRep (ComposeK Maybe Maybe Int)
ty_expected = TypeRep t_ajUa[tau:1]
deeply_instantiate final subst
origin: arising from a pattern
type: TypeRep (ComposeK Maybe Maybe Int)
new type: TypeRep (ComposeK Maybe Maybe Int)
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 1
TypeRep (ComposeK Maybe Maybe Int) ~ TypeRep t_ajUa[tau:1]
arising from a type equality TypeRep t_ajUa[tau:1] ~ a_ajMF[tau:1]
u_tys
tclvl 1
* ~ k2_ajU9[tau:1]
arising from a type equality TypeRep t_ajUa[tau:1] ~ a_ajMF[tau:1]
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from k2_ajU9[tau:1] ~ *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from k2_ajU9[tau:1] ~ *
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar k2_ajU9[tau:1] := *
u_tys yields no coercion
u_tys
tclvl 1
ComposeK Maybe Maybe Int ~ t_ajUa[tau:1]
arising from a type equality TypeRep t_ajUa[tau:1] ~ a_ajMF[tau:1]
u_tys
tclvl 1
* ~ k2_ajU9[tau:1]
arising from a kind equality arising from
t_ajUa[tau:1] ~ ComposeK Maybe Maybe Int
found filled tyvar k2_ajU9[tau:1] :-> *
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
t_ajUa[tau:1] ~ ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar t_ajUa[tau:1] := ComposeK Maybe Maybe Int
u_tys yields no coercion
u_tys yields no coercion
tcPatSynPat
TRApp
Check{a_ajMF[tau:1]}
TypeRep t_ajUa[tau:1]
[k1_ajUb[ssk:2], a_ajUc[ssk:2], b_ajUd[ssk:2]]
[(t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])]
[]
[TypeRep a_ajUc[ssk:2], TypeRep b_ajUd[ssk:2]]
instCall <>
checkConstraints {
tcPatBndr(not let)
x_aegH
TypeRep a_ajUc[ssk:2]
tcExtendIdBndrs [x_aegH[<NotTopLevel>]]
env2
[(x_aegH, Identifier[x_aegH::TypeRep a_ajUc[ssk:2], NotLetBound])]
tcPatBndr(not let)
y_aegI
TypeRep b_ajUd[ssk:2]
tcExtendIdBndrs [y_aegI[<NotTopLevel>]]
env2
[(y_aegI, Identifier[y_aegI::TypeRep b_ajUd[ssk:2], NotLetBound])]
tcInferId
>> :: forall (m :: * -> *).
Monad m =>
forall a b. m a -> m b -> m b
instCallConstraints [$dMonad_ajUi]
Instantiating
all tyvars? True
origin arising from a do statement
type forall (m :: * -> *). Monad m => forall a b. m a -> m b -> m b
theta [Monad m]
leave_bndrs []
with [m_ajUh[tau:2]]
theta: [Monad m_ajUh[tau:2]]
Instantiating
all tyvars? True
origin arising from a do statement
type forall a b.
m_ajUh[tau:2] a -> m_ajUh[tau:2] b -> m_ajUh[tau:2] b
theta []
leave_bndrs []
with [a_ajUj[tau:2], b_ajUk[tau:2]]
theta: []
tcSkolemise
tcSkolemise
2
expected_ty m_ajUh[tau:2] a_ajUj[tau:2]
inst tyvars []
given []
inst type m_ajUh[tau:2] a_ajUj[tau:2]
tcSkolemise
tcSkolemise
2
expected_ty m_ajUh[tau:2] b_ajUk[tau:2]
inst tyvars []
given []
inst type m_ajUh[tau:2] b_ajUk[tau:2]
tcSubTypeDS_O
arising from a do statement
a type expected by the context
m_ajUh[tau:2] b_ajUk[tau:2]
Check{m_ajMD[tau:1] b_ajMG[tau:1]}
tc_sub_type_ds
ty_actual = m_ajUh[tau:2] b_ajUk[tau:2]
ty_expected = m_ajMD[tau:1] b_ajMG[tau:1]
deeply_instantiate final subst
origin: arising from a do statement
type: m_ajUh[tau:2] b_ajUk[tau:2]
new type: m_ajUh[tau:2] b_ajUk[tau:2]
subst: [TCvSubst
In scope: InScope {m_ajUh b_ajUk}
Type env: []
Co env: []]
u_tys
tclvl 2
m_ajUh[tau:2] b_ajUk[tau:2] ~ m_ajMD[tau:1] b_ajMG[tau:1]
arising from a type equality m_ajUh[tau:2] b_ajUk[tau:2]
~
m_ajMD[tau:1] b_ajMG[tau:1]
u_tys
tclvl 2
m_ajUh[tau:2] ~ m_ajMD[tau:1]
arising from a type equality m_ajUh[tau:2] b_ajUk[tau:2]
~
m_ajMD[tau:1] b_ajMG[tau:1]
u_tys
tclvl 2
* -> * ~ * -> *
arising from a kind equality arising from m_ajUh[tau:2] ~ IO
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from m_ajUh[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ajUh[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from m_ajUh[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ajUh[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ajUh[tau:2] := IO
u_tys yields no coercion
u_tys
tclvl 2
b_ajUk[tau:2] ~ b_ajMG[tau:1]
arising from a type equality m_ajUh[tau:2] b_ajUk[tau:2]
~
m_ajMD[tau:1] b_ajMG[tau:1]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from b_ajUk[tau:2] ~ ()
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from b_ajUk[tau:2] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ajUk[tau:2] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId print :: forall a. Show a => a -> IO ()
instCallConstraints [$dShow_ak70]
Instantiating
all tyvars? True
origin arising from a use of ‘print’
type forall a. Show a => a -> IO ()
theta [Show a]
leave_bndrs []
with [a_ak6Z[tau:2]]
theta: [Show a_ak6Z[tau:2]]
tcPolyExprNC Check{a_ak6Z[tau:2]}
tcSkolemise
tcSkolemise
2
expected_ty a_ak6Z[tau:2]
inst tyvars []
given []
inst type a_ak6Z[tau:2]
matchExpectedTyConApp
(,)
[a_11, b_12]
[a_ak71[tau:2], b_ak72[tau:2]]
u_tys
tclvl 2
(a_ak71[tau:2], b_ak72[tau:2]) ~ a_ak6Z[tau:2]
arising from a type equality (a_ak71[tau:2], b_ak72[tau:2])
~
a_ak6Z[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
a_ak6Z[tau:2] ~ (a_ak71[tau:2], b_ak72[tau:2])
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak6Z[tau:2] ~ (a_ak71[tau:2], b_ak72[tau:2])
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak6Z[tau:2] := (a_ak71[tau:2], b_ak72[tau:2])
u_tys yields no coercion
tcPolyExpr Check{a_ak71[tau:2]}
tcPolyExprNC Check{a_ak71[tau:2]}
tcSkolemise
tcSkolemise
2
expected_ty a_ak71[tau:2]
inst tyvars []
given []
inst type a_ak71[tau:2]
tcInferId x_aegH :: TypeRep a_ajUc[ssk:2]
tcCheckId
x_aegH
TypeRep a_ajUc[ssk:2]
Check{a_ak71[tau:2]}
tcWrapResult
Actual: TypeRep a_ajUc[ssk:2]
Expected: Check{a_ak71[tau:2]}
tc_sub_type_ds
ty_actual = TypeRep a_ajUc[ssk:2]
ty_expected = a_ak71[tau:2]
deeply_instantiate final subst
origin: arising from a use of ‘x_aegH’
type: TypeRep a_ajUc[ssk:2]
new type: TypeRep a_ajUc[ssk:2]
subst: [TCvSubst
In scope: InScope {k2_ajU9 k1_ajUb a_ajUc}
Type env: []
Co env: []]
u_tys
tclvl 2
TypeRep a_ajUc[ssk:2] ~ a_ak71[tau:2]
arising from a type equality TypeRep a_ajUc[ssk:2] ~ a_ak71[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
a_ak71[tau:2] ~ TypeRep a_ajUc[ssk:2]
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak71[tau:2] ~ TypeRep a_ajUc[ssk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak71[tau:2] := TypeRep a_ajUc[ssk:2]
u_tys yields no coercion
tcPolyExpr Check{b_ak72[tau:2]}
tcPolyExprNC Check{b_ak72[tau:2]}
tcSkolemise
tcSkolemise
2
expected_ty b_ak72[tau:2]
inst tyvars []
given []
inst type b_ak72[tau:2]
tcInferId y_aegI :: TypeRep b_ajUd[ssk:2]
tcCheckId
y_aegI
TypeRep b_ajUd[ssk:2]
Check{b_ak72[tau:2]}
tcWrapResult
Actual: TypeRep b_ajUd[ssk:2]
Expected: Check{b_ak72[tau:2]}
tc_sub_type_ds
ty_actual = TypeRep b_ajUd[ssk:2]
ty_expected = b_ak72[tau:2]
deeply_instantiate final subst
origin: arising from a use of ‘y_aegI’
type: TypeRep b_ajUd[ssk:2]
new type: TypeRep b_ajUd[ssk:2]
subst: [TCvSubst
In scope: InScope {k1_ajUb b_ajUd}
Type env: []
Co env: []]
u_tys
tclvl 2
TypeRep b_ajUd[ssk:2] ~ b_ak72[tau:2]
arising from a type equality TypeRep b_ajUd[ssk:2] ~ b_ak72[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
b_ak72[tau:2] ~ TypeRep b_ajUd[ssk:2]
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
b_ak72[tau:2] ~ TypeRep b_ajUd[ssk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak72[tau:2] := TypeRep b_ajUd[ssk:2]
u_tys yields no coercion
tc_sub_type_ds
ty_actual = IO ()
ty_expected = m_ajUh[tau:2] a_ajUj[tau:2]
deeply_instantiate final subst
origin: arising from a use of ‘print’
type: IO ()
new type: IO ()
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 2
IO () ~ m_ajUh[tau:2] a_ajUj[tau:2]
arising from a type equality IO () ~ m_ajUh[tau:2] a_ajUj[tau:2]
u_tys
tclvl 2
IO ~ m_ajUh[tau:2]
arising from a type equality IO () ~ m_ajUh[tau:2] a_ajUj[tau:2]
found filled tyvar m_ajUh[tau:2] :-> IO
u_tys yields no coercion
u_tys
tclvl 2
() ~ a_ajUj[tau:2]
arising from a type equality IO () ~ m_ajUh[tau:2] a_ajUj[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from a_ajUj[tau:2] ~ ()
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from a_ajUj[tau:2] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ajUj[tau:2] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId
>>= :: forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
instCallConstraints [$dMonad_ak74]
Instantiating
all tyvars? True
origin arising from a do statement
type forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
theta [Monad m]
leave_bndrs []
with [m_ak73[tau:2]]
theta: [Monad m_ak73[tau:2]]
Instantiating
all tyvars? True
origin arising from a do statement
type forall a b.
m_ak73[tau:2] a -> (a -> m_ak73[tau:2] b) -> m_ak73[tau:2] b
theta []
leave_bndrs []
with [a_ak75[tau:2], b_ak76[tau:2]]
theta: []
tcSkolemise
tcSkolemise
2
expected_ty m_ak73[tau:2] a_ak75[tau:2]
inst tyvars []
given []
inst type m_ak73[tau:2] a_ak75[tau:2]
tcSkolemise
tcSkolemise
2
expected_ty a_ak75[tau:2] -> m_ak73[tau:2] b_ak76[tau:2]
inst tyvars []
given []
inst type a_ak75[tau:2] -> m_ak73[tau:2] b_ak76[tau:2]
tcSkolemise
tcSkolemise
2
expected_ty m_ak73[tau:2] b_ak76[tau:2]
inst tyvars []
given []
inst type m_ak73[tau:2] b_ak76[tau:2]
tcSubTypeDS_O
arising from a do statement
a type expected by the context
m_ak73[tau:2] b_ak76[tau:2]
Check{m_ajUh[tau:2] b_ajUk[tau:2]}
tc_sub_type_ds
ty_actual = m_ak73[tau:2] b_ak76[tau:2]
ty_expected = m_ajUh[tau:2] b_ajUk[tau:2]
deeply_instantiate final subst
origin: arising from a do statement
type: m_ak73[tau:2] b_ak76[tau:2]
new type: m_ak73[tau:2] b_ak76[tau:2]
subst: [TCvSubst
In scope: InScope {m_ak73 b_ak76}
Type env: []
Co env: []]
u_tys
tclvl 2
m_ak73[tau:2] b_ak76[tau:2] ~ m_ajUh[tau:2] b_ajUk[tau:2]
arising from a type equality m_ak73[tau:2] b_ak76[tau:2]
~
m_ajUh[tau:2] b_ajUk[tau:2]
u_tys
tclvl 2
m_ak73[tau:2] ~ m_ajUh[tau:2]
arising from a type equality m_ak73[tau:2] b_ak76[tau:2]
~
m_ajUh[tau:2] b_ajUk[tau:2]
u_tys
tclvl 2
* -> * ~ * -> *
arising from a kind equality arising from m_ak73[tau:2] ~ IO
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from m_ak73[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak73[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from m_ak73[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak73[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak73[tau:2] := IO
u_tys yields no coercion
u_tys
tclvl 2
b_ak76[tau:2] ~ b_ajUk[tau:2]
arising from a type equality m_ak73[tau:2] b_ak76[tau:2]
~
m_ajUh[tau:2] b_ajUk[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from b_ak76[tau:2] ~ ()
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from b_ak76[tau:2] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak76[tau:2] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId
pure :: forall (f :: * -> *). Applicative f => forall a. a -> f a
instCallConstraints [$dApplicative_ak78]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall (f :: * -> *). Applicative f => forall a. a -> f a
theta [Applicative f]
leave_bndrs []
with [f_ak77[tau:2]]
theta: [Applicative f_ak77[tau:2]]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall a. a -> f_ak77[tau:2] a
theta []
leave_bndrs []
with [a_ak79[tau:2]]
theta: []
tcPolyExprNC Check{a_ak79[tau:2]}
tcSkolemise
tcSkolemise
2
expected_ty a_ak79[tau:2]
inst tyvars []
given []
inst type a_ak79[tau:2]
tcInferId x_aegH :: TypeRep a_ajUc[ssk:2]
tcCheckId
x_aegH
TypeRep a_ajUc[ssk:2]
Check{a_ak79[tau:2]}
tcWrapResult
Actual: TypeRep a_ajUc[ssk:2]
Expected: Check{a_ak79[tau:2]}
tc_sub_type_ds
ty_actual = TypeRep a_ajUc[ssk:2]
ty_expected = a_ak79[tau:2]
deeply_instantiate final subst
origin: arising from a use of ‘x_aegH’
type: TypeRep a_ajUc[ssk:2]
new type: TypeRep a_ajUc[ssk:2]
subst: [TCvSubst
In scope: InScope {k2_ajU9 k1_ajUb a_ajUc}
Type env: []
Co env: []]
u_tys
tclvl 2
TypeRep a_ajUc[ssk:2] ~ a_ak79[tau:2]
arising from a type equality TypeRep a_ajUc[ssk:2] ~ a_ak79[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
a_ak79[tau:2] ~ TypeRep a_ajUc[ssk:2]
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak79[tau:2] ~ TypeRep a_ajUc[ssk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak79[tau:2] := TypeRep a_ajUc[ssk:2]
u_tys yields no coercion
tc_sub_type_ds
ty_actual = f_ak77[tau:2] a_ak79[tau:2]
ty_expected = m_ak73[tau:2] a_ak75[tau:2]
deeply_instantiate final subst
origin: arising from a use of ‘pure’
type: f_ak77[tau:2] a_ak79[tau:2]
new type: f_ak77[tau:2] a_ak79[tau:2]
subst: [TCvSubst
In scope: InScope {f_ak77 a_ak79}
Type env: []
Co env: []]
u_tys
tclvl 2
f_ak77[tau:2] a_ak79[tau:2] ~ m_ak73[tau:2] a_ak75[tau:2]
arising from a type equality f_ak77[tau:2] a_ak79[tau:2]
~
m_ak73[tau:2] a_ak75[tau:2]
u_tys
tclvl 2
f_ak77[tau:2] ~ m_ak73[tau:2]
arising from a type equality f_ak77[tau:2] a_ak79[tau:2]
~
m_ak73[tau:2] a_ak75[tau:2]
u_tys
tclvl 2
* -> * ~ * -> *
arising from a kind equality arising from f_ak77[tau:2] ~ IO
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from f_ak77[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ak77[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from f_ak77[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ak77[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar f_ak77[tau:2] := IO
u_tys yields no coercion
u_tys
tclvl 2
a_ak79[tau:2] ~ a_ak75[tau:2]
arising from a type equality f_ak77[tau:2] a_ak79[tau:2]
~
m_ak73[tau:2] a_ak75[tau:2]
found filled tyvar a_ak79[tau:2] :-> TypeRep a_ajUc[ssk:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
a_ak75[tau:2] ~ TypeRep a_ajUc[ssk:2]
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak75[tau:2] ~ TypeRep a_ajUc[ssk:2]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak75[tau:2] := TypeRep a_ajUc[ssk:2]
u_tys yields no coercion
u_tys yields no coercion
tc_sub_tc_type (general case)
ty_actual = a_ak75[tau:2]
ty_expected = TypeRep t_ak7b[tau:2]
tcSkolemise
tcSkolemise
2
expected_ty TypeRep t_ak7b[tau:2]
inst tyvars []
given []
inst type TypeRep t_ak7b[tau:2]
tc_sub_type_ds
ty_actual = a_ak75[tau:2]
ty_expected = TypeRep t_ak7b[tau:2]
tcSubTypeDS_NC_O following filled act meta-tyvar:
a_ak75[tau:2] --> TypeRep a_ajUc[ssk:2]
tc_sub_type_ds
ty_actual = TypeRep a_ajUc[ssk:2]
ty_expected = TypeRep t_ak7b[tau:2]
deeply_instantiate final subst
origin: arising from a pattern
type: TypeRep a_ajUc[ssk:2]
new type: TypeRep a_ajUc[ssk:2]
subst: [TCvSubst
In scope: InScope {k1_ajUb a_ajUc}
Type env: []
Co env: []]
u_tys
tclvl 2
TypeRep a_ajUc[ssk:2] ~ TypeRep t_ak7b[tau:2]
arising from a type equality TypeRep t_ak7b[tau:2] ~ a_ak75[tau:2]
u_tys
tclvl 2
k1_ajUb[ssk:2] -> * ~ k2_ak7a[tau:2]
arising from a type equality TypeRep t_ak7b[tau:2] ~ a_ak75[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
k2_ak7a[tau:2] ~ k1_ajUb[ssk:2] -> *
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
k2_ak7a[tau:2] ~ k1_ajUb[ssk:2] -> *
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar k2_ak7a[tau:2] := k1_ajUb[ssk:2] -> *
u_tys yields no coercion
u_tys
tclvl 2
a_ajUc[ssk:2] ~ t_ak7b[tau:2]
arising from a type equality TypeRep t_ak7b[tau:2] ~ a_ak75[tau:2]
u_tys
tclvl 2
k1_ajUb[ssk:2] -> * ~ k1_ajUb[ssk:2] -> *
arising from a kind equality arising from
t_ak7b[tau:2] ~ a_ajUc[ssk:2]
u_tys
tclvl 2
k1_ajUb[ssk:2] ~ k1_ajUb[ssk:2]
arising from a kind equality arising from
t_ak7b[tau:2] ~ a_ajUc[ssk:2]
u_tys yields no coercion
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from
t_ak7b[tau:2] ~ a_ajUc[ssk:2]
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
t_ak7b[tau:2] ~ a_ajUc[ssk:2]
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar t_ak7b[tau:2] := a_ajUc[ssk:2]
u_tys yields no coercion
u_tys yields no coercion
tcPatSynPat
TRApp
Check{a_ak75[tau:2]}
TypeRep t_ak7b[tau:2]
[k1_ak7c[ssk:3], a_ak7d[ssk:3], b_ak7e[ssk:3]]
[(t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])]
[]
[TypeRep a_ak7d[ssk:3], TypeRep b_ak7e[ssk:3]]
instCall <>
checkConstraints {
tcPatBndr(not let)
x_aell
TypeRep a_ak7d[ssk:3]
tcExtendIdBndrs [x_aell[<NotTopLevel>]]
env2
[(x_aell, Identifier[x_aell::TypeRep a_ak7d[ssk:3], NotLetBound])]
tcPatBndr(not let)
y_aelm
TypeRep b_ak7e[ssk:3]
tcExtendIdBndrs [y_aelm[<NotTopLevel>]]
env2
[(y_aelm, Identifier[y_aelm::TypeRep b_ak7e[ssk:3], NotLetBound])]
tcInferId
>> :: forall (m :: * -> *).
Monad m =>
forall a b. m a -> m b -> m b
instCallConstraints [$dMonad_ak7h]
Instantiating
all tyvars? True
origin arising from a do statement
type forall (m :: * -> *). Monad m => forall a b. m a -> m b -> m b
theta [Monad m]
leave_bndrs []
with [m_ak7g[tau:3]]
theta: [Monad m_ak7g[tau:3]]
Instantiating
all tyvars? True
origin arising from a do statement
type forall a b.
m_ak7g[tau:3] a -> m_ak7g[tau:3] b -> m_ak7g[tau:3] b
theta []
leave_bndrs []
with [a_ak7i[tau:3], b_ak7j[tau:3]]
theta: []
tcSkolemise
tcSkolemise
3
expected_ty m_ak7g[tau:3] a_ak7i[tau:3]
inst tyvars []
given []
inst type m_ak7g[tau:3] a_ak7i[tau:3]
tcSkolemise
tcSkolemise
3
expected_ty m_ak7g[tau:3] b_ak7j[tau:3]
inst tyvars []
given []
inst type m_ak7g[tau:3] b_ak7j[tau:3]
tcSubTypeDS_O
arising from a do statement
a type expected by the context
m_ak7g[tau:3] b_ak7j[tau:3]
Check{m_ak73[tau:2] b_ak76[tau:2]}
tc_sub_type_ds
ty_actual = m_ak7g[tau:3] b_ak7j[tau:3]
ty_expected = m_ak73[tau:2] b_ak76[tau:2]
deeply_instantiate final subst
origin: arising from a do statement
type: m_ak7g[tau:3] b_ak7j[tau:3]
new type: m_ak7g[tau:3] b_ak7j[tau:3]
subst: [TCvSubst
In scope: InScope {m_ak7g b_ak7j}
Type env: []
Co env: []]
u_tys
tclvl 3
m_ak7g[tau:3] b_ak7j[tau:3] ~ m_ak73[tau:2] b_ak76[tau:2]
arising from a type equality m_ak7g[tau:3] b_ak7j[tau:3]
~
m_ak73[tau:2] b_ak76[tau:2]
u_tys
tclvl 3
m_ak7g[tau:3] ~ m_ak73[tau:2]
arising from a type equality m_ak7g[tau:3] b_ak7j[tau:3]
~
m_ak73[tau:2] b_ak76[tau:2]
u_tys
tclvl 3
* -> * ~ * -> *
arising from a kind equality arising from m_ak7g[tau:3] ~ IO
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from m_ak7g[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7g[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from m_ak7g[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7g[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak7g[tau:3] := IO
u_tys yields no coercion
u_tys
tclvl 3
b_ak7j[tau:3] ~ b_ak76[tau:2]
arising from a type equality m_ak7g[tau:3] b_ak7j[tau:3]
~
m_ak73[tau:2] b_ak76[tau:2]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from b_ak7j[tau:3] ~ ()
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from b_ak7j[tau:3] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak7j[tau:3] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId print :: forall a. Show a => a -> IO ()
instCallConstraints [$dShow_ak7l]
Instantiating
all tyvars? True
origin arising from a use of ‘print’
type forall a. Show a => a -> IO ()
theta [Show a]
leave_bndrs []
with [a_ak7k[tau:3]]
theta: [Show a_ak7k[tau:3]]
tcPolyExprNC Check{a_ak7k[tau:3]}
tcSkolemise
tcSkolemise
3
expected_ty a_ak7k[tau:3]
inst tyvars []
given []
inst type a_ak7k[tau:3]
matchExpectedTyConApp
(,)
[a_11, b_12]
[a_ak7m[tau:3], b_ak7n[tau:3]]
u_tys
tclvl 3
(a_ak7m[tau:3], b_ak7n[tau:3]) ~ a_ak7k[tau:3]
arising from a type equality (a_ak7m[tau:3], b_ak7n[tau:3])
~
a_ak7k[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from
a_ak7k[tau:3] ~ (a_ak7m[tau:3], b_ak7n[tau:3])
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7k[tau:3] ~ (a_ak7m[tau:3], b_ak7n[tau:3])
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7k[tau:3] := (a_ak7m[tau:3], b_ak7n[tau:3])
u_tys yields no coercion
tcPolyExpr Check{a_ak7m[tau:3]}
tcPolyExprNC Check{a_ak7m[tau:3]}
tcSkolemise
tcSkolemise
3
expected_ty a_ak7m[tau:3]
inst tyvars []
given []
inst type a_ak7m[tau:3]
tcInferId x_aell :: TypeRep a_ak7d[ssk:3]
tcCheckId
x_aell
TypeRep a_ak7d[ssk:3]
Check{a_ak7m[tau:3]}
tcWrapResult
Actual: TypeRep a_ak7d[ssk:3]
Expected: Check{a_ak7m[tau:3]}
tc_sub_type_ds
ty_actual = TypeRep a_ak7d[ssk:3]
ty_expected = a_ak7m[tau:3]
deeply_instantiate final subst
origin: arising from a use of ‘x_aell’
type: TypeRep a_ak7d[ssk:3]
new type: TypeRep a_ak7d[ssk:3]
subst: [TCvSubst
In scope: InScope {k2_ak7a k1_ak7c a_ak7d}
Type env: []
Co env: []]
u_tys
tclvl 3
TypeRep a_ak7d[ssk:3] ~ a_ak7m[tau:3]
arising from a type equality TypeRep a_ak7d[ssk:3] ~ a_ak7m[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from
a_ak7m[tau:3] ~ TypeRep a_ak7d[ssk:3]
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7m[tau:3] ~ TypeRep a_ak7d[ssk:3]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7m[tau:3] := TypeRep a_ak7d[ssk:3]
u_tys yields no coercion
tcPolyExpr Check{b_ak7n[tau:3]}
tcPolyExprNC Check{b_ak7n[tau:3]}
tcSkolemise
tcSkolemise
3
expected_ty b_ak7n[tau:3]
inst tyvars []
given []
inst type b_ak7n[tau:3]
tcInferId y_aelm :: TypeRep b_ak7e[ssk:3]
tcCheckId
y_aelm
TypeRep b_ak7e[ssk:3]
Check{b_ak7n[tau:3]}
tcWrapResult
Actual: TypeRep b_ak7e[ssk:3]
Expected: Check{b_ak7n[tau:3]}
tc_sub_type_ds
ty_actual = TypeRep b_ak7e[ssk:3]
ty_expected = b_ak7n[tau:3]
deeply_instantiate final subst
origin: arising from a use of ‘y_aelm’
type: TypeRep b_ak7e[ssk:3]
new type: TypeRep b_ak7e[ssk:3]
subst: [TCvSubst
In scope: InScope {k1_ak7c b_ak7e}
Type env: []
Co env: []]
u_tys
tclvl 3
TypeRep b_ak7e[ssk:3] ~ b_ak7n[tau:3]
arising from a type equality TypeRep b_ak7e[ssk:3] ~ b_ak7n[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from
b_ak7n[tau:3] ~ TypeRep b_ak7e[ssk:3]
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
b_ak7n[tau:3] ~ TypeRep b_ak7e[ssk:3]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak7n[tau:3] := TypeRep b_ak7e[ssk:3]
u_tys yields no coercion
tc_sub_type_ds
ty_actual = IO ()
ty_expected = m_ak7g[tau:3] a_ak7i[tau:3]
deeply_instantiate final subst
origin: arising from a use of ‘print’
type: IO ()
new type: IO ()
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 3
IO () ~ m_ak7g[tau:3] a_ak7i[tau:3]
arising from a type equality IO () ~ m_ak7g[tau:3] a_ak7i[tau:3]
u_tys
tclvl 3
IO ~ m_ak7g[tau:3]
arising from a type equality IO () ~ m_ak7g[tau:3] a_ak7i[tau:3]
found filled tyvar m_ak7g[tau:3] :-> IO
u_tys yields no coercion
u_tys
tclvl 3
() ~ a_ak7i[tau:3]
arising from a type equality IO () ~ m_ak7g[tau:3] a_ak7i[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from a_ak7i[tau:3] ~ ()
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from a_ak7i[tau:3] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7i[tau:3] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId
>>= :: forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
instCallConstraints [$dMonad_ak7p]
Instantiating
all tyvars? True
origin arising from a do statement
type forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
theta [Monad m]
leave_bndrs []
with [m_ak7o[tau:3]]
theta: [Monad m_ak7o[tau:3]]
Instantiating
all tyvars? True
origin arising from a do statement
type forall a b.
m_ak7o[tau:3] a -> (a -> m_ak7o[tau:3] b) -> m_ak7o[tau:3] b
theta []
leave_bndrs []
with [a_ak7q[tau:3], b_ak7r[tau:3]]
theta: []
tcSkolemise
tcSkolemise
3
expected_ty m_ak7o[tau:3] a_ak7q[tau:3]
inst tyvars []
given []
inst type m_ak7o[tau:3] a_ak7q[tau:3]
tcSkolemise
tcSkolemise
3
expected_ty a_ak7q[tau:3] -> m_ak7o[tau:3] b_ak7r[tau:3]
inst tyvars []
given []
inst type a_ak7q[tau:3] -> m_ak7o[tau:3] b_ak7r[tau:3]
tcSkolemise
tcSkolemise
3
expected_ty m_ak7o[tau:3] b_ak7r[tau:3]
inst tyvars []
given []
inst type m_ak7o[tau:3] b_ak7r[tau:3]
tcSubTypeDS_O
arising from a do statement
a type expected by the context
m_ak7o[tau:3] b_ak7r[tau:3]
Check{m_ak7g[tau:3] b_ak7j[tau:3]}
tc_sub_type_ds
ty_actual = m_ak7o[tau:3] b_ak7r[tau:3]
ty_expected = m_ak7g[tau:3] b_ak7j[tau:3]
deeply_instantiate final subst
origin: arising from a do statement
type: m_ak7o[tau:3] b_ak7r[tau:3]
new type: m_ak7o[tau:3] b_ak7r[tau:3]
subst: [TCvSubst
In scope: InScope {m_ak7o b_ak7r}
Type env: []
Co env: []]
u_tys
tclvl 3
m_ak7o[tau:3] b_ak7r[tau:3] ~ m_ak7g[tau:3] b_ak7j[tau:3]
arising from a type equality m_ak7o[tau:3] b_ak7r[tau:3]
~
m_ak7g[tau:3] b_ak7j[tau:3]
u_tys
tclvl 3
m_ak7o[tau:3] ~ m_ak7g[tau:3]
arising from a type equality m_ak7o[tau:3] b_ak7r[tau:3]
~
m_ak7g[tau:3] b_ak7j[tau:3]
u_tys
tclvl 3
* -> * ~ * -> *
arising from a kind equality arising from m_ak7o[tau:3] ~ IO
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from m_ak7o[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7o[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from m_ak7o[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7o[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak7o[tau:3] := IO
u_tys yields no coercion
u_tys
tclvl 3
b_ak7r[tau:3] ~ b_ak7j[tau:3]
arising from a type equality m_ak7o[tau:3] b_ak7r[tau:3]
~
m_ak7g[tau:3] b_ak7j[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from b_ak7r[tau:3] ~ ()
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from b_ak7r[tau:3] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak7r[tau:3] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId
pure :: forall (f :: * -> *). Applicative f => forall a. a -> f a
instCallConstraints [$dApplicative_ak7t]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall (f :: * -> *). Applicative f => forall a. a -> f a
theta [Applicative f]
leave_bndrs []
with [f_ak7s[tau:3]]
theta: [Applicative f_ak7s[tau:3]]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall a. a -> f_ak7s[tau:3] a
theta []
leave_bndrs []
with [a_ak7u[tau:3]]
theta: []
tcPolyExprNC Check{a_ak7u[tau:3]}
tcSkolemise
tcSkolemise
3
expected_ty a_ak7u[tau:3]
inst tyvars []
given []
inst type a_ak7u[tau:3]
tcInferId x_aell :: TypeRep a_ak7d[ssk:3]
tcCheckId
x_aell
TypeRep a_ak7d[ssk:3]
Check{a_ak7u[tau:3]}
tcWrapResult
Actual: TypeRep a_ak7d[ssk:3]
Expected: Check{a_ak7u[tau:3]}
tc_sub_type_ds
ty_actual = TypeRep a_ak7d[ssk:3]
ty_expected = a_ak7u[tau:3]
deeply_instantiate final subst
origin: arising from a use of ‘x_aell’
type: TypeRep a_ak7d[ssk:3]
new type: TypeRep a_ak7d[ssk:3]
subst: [TCvSubst
In scope: InScope {k2_ak7a k1_ak7c a_ak7d}
Type env: []
Co env: []]
u_tys
tclvl 3
TypeRep a_ak7d[ssk:3] ~ a_ak7u[tau:3]
arising from a type equality TypeRep a_ak7d[ssk:3] ~ a_ak7u[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from
a_ak7u[tau:3] ~ TypeRep a_ak7d[ssk:3]
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7u[tau:3] ~ TypeRep a_ak7d[ssk:3]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7u[tau:3] := TypeRep a_ak7d[ssk:3]
u_tys yields no coercion
tc_sub_type_ds
ty_actual = f_ak7s[tau:3] a_ak7u[tau:3]
ty_expected = m_ak7o[tau:3] a_ak7q[tau:3]
deeply_instantiate final subst
origin: arising from a use of ‘pure’
type: f_ak7s[tau:3] a_ak7u[tau:3]
new type: f_ak7s[tau:3] a_ak7u[tau:3]
subst: [TCvSubst
In scope: InScope {f_ak7s a_ak7u}
Type env: []
Co env: []]
u_tys
tclvl 3
f_ak7s[tau:3] a_ak7u[tau:3] ~ m_ak7o[tau:3] a_ak7q[tau:3]
arising from a type equality f_ak7s[tau:3] a_ak7u[tau:3]
~
m_ak7o[tau:3] a_ak7q[tau:3]
u_tys
tclvl 3
f_ak7s[tau:3] ~ m_ak7o[tau:3]
arising from a type equality f_ak7s[tau:3] a_ak7u[tau:3]
~
m_ak7o[tau:3] a_ak7q[tau:3]
u_tys
tclvl 3
* -> * ~ * -> *
arising from a kind equality arising from f_ak7s[tau:3] ~ IO
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from f_ak7s[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ak7s[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from f_ak7s[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ak7s[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar f_ak7s[tau:3] := IO
u_tys yields no coercion
u_tys
tclvl 3
a_ak7u[tau:3] ~ a_ak7q[tau:3]
arising from a type equality f_ak7s[tau:3] a_ak7u[tau:3]
~
m_ak7o[tau:3] a_ak7q[tau:3]
found filled tyvar a_ak7u[tau:3] :-> TypeRep a_ak7d[ssk:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from
a_ak7q[tau:3] ~ TypeRep a_ak7d[ssk:3]
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7q[tau:3] ~ TypeRep a_ak7d[ssk:3]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7q[tau:3] := TypeRep a_ak7d[ssk:3]
u_tys yields no coercion
u_tys yields no coercion
tc_sub_tc_type (general case)
ty_actual = a_ak7q[tau:3]
ty_expected = TypeRep t_ak7w[tau:3]
tcSkolemise
tcSkolemise
3
expected_ty TypeRep t_ak7w[tau:3]
inst tyvars []
given []
inst type TypeRep t_ak7w[tau:3]
tc_sub_type_ds
ty_actual = a_ak7q[tau:3]
ty_expected = TypeRep t_ak7w[tau:3]
tcSubTypeDS_NC_O following filled act meta-tyvar:
a_ak7q[tau:3] --> TypeRep a_ak7d[ssk:3]
tc_sub_type_ds
ty_actual = TypeRep a_ak7d[ssk:3]
ty_expected = TypeRep t_ak7w[tau:3]
deeply_instantiate final subst
origin: arising from a pattern
type: TypeRep a_ak7d[ssk:3]
new type: TypeRep a_ak7d[ssk:3]
subst: [TCvSubst
In scope: InScope {k1_ajUb k1_ak7c a_ak7d}
Type env: []
Co env: []]
u_tys
tclvl 3
TypeRep a_ak7d[ssk:3] ~ TypeRep t_ak7w[tau:3]
arising from a type equality TypeRep t_ak7w[tau:3] ~ a_ak7q[tau:3]
u_tys
tclvl 3
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> * ~ k2_ak7v[tau:3]
arising from a type equality TypeRep t_ak7w[tau:3] ~ a_ak7q[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from
k2_ak7v[tau:3] ~ k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
k2_ak7v[tau:3] ~ k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar
k2_ak7v[tau:3] := k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
u_tys yields no coercion
u_tys
tclvl 3
a_ak7d[ssk:3] ~ t_ak7w[tau:3]
arising from a type equality TypeRep t_ak7w[tau:3] ~ a_ak7q[tau:3]
u_tys
tclvl 3
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
~
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
arising from a kind equality arising from
t_ak7w[tau:3] ~ a_ak7d[ssk:3]
u_tys
tclvl 3
k1_ak7c[ssk:3] ~ k1_ak7c[ssk:3]
arising from a kind equality arising from
t_ak7w[tau:3] ~ a_ak7d[ssk:3]
u_tys yields no coercion
u_tys
tclvl 3
k1_ajUb[ssk:2] -> * ~ k1_ajUb[ssk:2] -> *
arising from a kind equality arising from
t_ak7w[tau:3] ~ a_ak7d[ssk:3]
u_tys
tclvl 3
k1_ajUb[ssk:2] ~ k1_ajUb[ssk:2]
arising from a kind equality arising from
t_ak7w[tau:3] ~ a_ak7d[ssk:3]
u_tys yields no coercion
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from
t_ak7w[tau:3] ~ a_ak7d[ssk:3]
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
t_ak7w[tau:3] ~ a_ak7d[ssk:3]
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar t_ak7w[tau:3] := a_ak7d[ssk:3]
u_tys yields no coercion
u_tys yields no coercion
tcPatSynPat
TRApp
Check{a_ak7q[tau:3]}
TypeRep t_ak7w[tau:3]
[k1_ak7x[ssk:4], a_ak7y[ssk:4], b_ak7z[ssk:4]]
[(t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])]
[]
[TypeRep a_ak7y[ssk:4], TypeRep b_ak7z[ssk:4]]
instCall <>
checkConstraints {
tcPatBndr(not let)
x_aeln
TypeRep a_ak7y[ssk:4]
tcExtendIdBndrs [x_aeln[<NotTopLevel>]]
env2
[(x_aeln, Identifier[x_aeln::TypeRep a_ak7y[ssk:4], NotLetBound])]
tcPatBndr(not let)
y_aelo
TypeRep b_ak7z[ssk:4]
tcExtendIdBndrs [y_aelo[<NotTopLevel>]]
env2
[(y_aelo, Identifier[y_aelo::TypeRep b_ak7z[ssk:4], NotLetBound])]
tcInferId
>> :: forall (m :: * -> *).
Monad m =>
forall a b. m a -> m b -> m b
instCallConstraints [$dMonad_ak7C]
Instantiating
all tyvars? True
origin arising from a do statement
type forall (m :: * -> *). Monad m => forall a b. m a -> m b -> m b
theta [Monad m]
leave_bndrs []
with [m_ak7B[tau:4]]
theta: [Monad m_ak7B[tau:4]]
Instantiating
all tyvars? True
origin arising from a do statement
type forall a b.
m_ak7B[tau:4] a -> m_ak7B[tau:4] b -> m_ak7B[tau:4] b
theta []
leave_bndrs []
with [a_ak7D[tau:4], b_ak7E[tau:4]]
theta: []
tcSkolemise
tcSkolemise
4
expected_ty m_ak7B[tau:4] a_ak7D[tau:4]
inst tyvars []
given []
inst type m_ak7B[tau:4] a_ak7D[tau:4]
tcSkolemise
tcSkolemise
4
expected_ty m_ak7B[tau:4] b_ak7E[tau:4]
inst tyvars []
given []
inst type m_ak7B[tau:4] b_ak7E[tau:4]
tcSubTypeDS_O
arising from a do statement
a type expected by the context
m_ak7B[tau:4] b_ak7E[tau:4]
Check{m_ak7o[tau:3] b_ak7r[tau:3]}
tc_sub_type_ds
ty_actual = m_ak7B[tau:4] b_ak7E[tau:4]
ty_expected = m_ak7o[tau:3] b_ak7r[tau:3]
deeply_instantiate final subst
origin: arising from a do statement
type: m_ak7B[tau:4] b_ak7E[tau:4]
new type: m_ak7B[tau:4] b_ak7E[tau:4]
subst: [TCvSubst
In scope: InScope {m_ak7B b_ak7E}
Type env: []
Co env: []]
u_tys
tclvl 4
m_ak7B[tau:4] b_ak7E[tau:4] ~ m_ak7o[tau:3] b_ak7r[tau:3]
arising from a type equality m_ak7B[tau:4] b_ak7E[tau:4]
~
m_ak7o[tau:3] b_ak7r[tau:3]
u_tys
tclvl 4
m_ak7B[tau:4] ~ m_ak7o[tau:3]
arising from a type equality m_ak7B[tau:4] b_ak7E[tau:4]
~
m_ak7o[tau:3] b_ak7r[tau:3]
u_tys
tclvl 4
* -> * ~ * -> *
arising from a kind equality arising from m_ak7B[tau:4] ~ IO
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from m_ak7B[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7B[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from m_ak7B[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7B[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak7B[tau:4] := IO
u_tys yields no coercion
u_tys
tclvl 4
b_ak7E[tau:4] ~ b_ak7r[tau:3]
arising from a type equality m_ak7B[tau:4] b_ak7E[tau:4]
~
m_ak7o[tau:3] b_ak7r[tau:3]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from b_ak7E[tau:4] ~ ()
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from b_ak7E[tau:4] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak7E[tau:4] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId print :: forall a. Show a => a -> IO ()
instCallConstraints [$dShow_ak7G]
Instantiating
all tyvars? True
origin arising from a use of ‘print’
type forall a. Show a => a -> IO ()
theta [Show a]
leave_bndrs []
with [a_ak7F[tau:4]]
theta: [Show a_ak7F[tau:4]]
tcPolyExprNC Check{a_ak7F[tau:4]}
tcSkolemise
tcSkolemise
4
expected_ty a_ak7F[tau:4]
inst tyvars []
given []
inst type a_ak7F[tau:4]
matchExpectedTyConApp
(,)
[a_11, b_12]
[a_ak7H[tau:4], b_ak7I[tau:4]]
u_tys
tclvl 4
(a_ak7H[tau:4], b_ak7I[tau:4]) ~ a_ak7F[tau:4]
arising from a type equality (a_ak7H[tau:4], b_ak7I[tau:4])
~
a_ak7F[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from
a_ak7F[tau:4] ~ (a_ak7H[tau:4], b_ak7I[tau:4])
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7F[tau:4] ~ (a_ak7H[tau:4], b_ak7I[tau:4])
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7F[tau:4] := (a_ak7H[tau:4], b_ak7I[tau:4])
u_tys yields no coercion
tcPolyExpr Check{a_ak7H[tau:4]}
tcPolyExprNC Check{a_ak7H[tau:4]}
tcSkolemise
tcSkolemise
4
expected_ty a_ak7H[tau:4]
inst tyvars []
given []
inst type a_ak7H[tau:4]
tcInferId x_aeln :: TypeRep a_ak7y[ssk:4]
tcCheckId
x_aeln
TypeRep a_ak7y[ssk:4]
Check{a_ak7H[tau:4]}
tcWrapResult
Actual: TypeRep a_ak7y[ssk:4]
Expected: Check{a_ak7H[tau:4]}
tc_sub_type_ds
ty_actual = TypeRep a_ak7y[ssk:4]
ty_expected = a_ak7H[tau:4]
deeply_instantiate final subst
origin: arising from a use of ‘x_aeln’
type: TypeRep a_ak7y[ssk:4]
new type: TypeRep a_ak7y[ssk:4]
subst: [TCvSubst
In scope: InScope {k2_ak7v k1_ak7x a_ak7y}
Type env: []
Co env: []]
u_tys
tclvl 4
TypeRep a_ak7y[ssk:4] ~ a_ak7H[tau:4]
arising from a type equality TypeRep a_ak7y[ssk:4] ~ a_ak7H[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from
a_ak7H[tau:4] ~ TypeRep a_ak7y[ssk:4]
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7H[tau:4] ~ TypeRep a_ak7y[ssk:4]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7H[tau:4] := TypeRep a_ak7y[ssk:4]
u_tys yields no coercion
tcPolyExpr Check{b_ak7I[tau:4]}
tcPolyExprNC Check{b_ak7I[tau:4]}
tcSkolemise
tcSkolemise
4
expected_ty b_ak7I[tau:4]
inst tyvars []
given []
inst type b_ak7I[tau:4]
tcInferId y_aelo :: TypeRep b_ak7z[ssk:4]
tcCheckId
y_aelo
TypeRep b_ak7z[ssk:4]
Check{b_ak7I[tau:4]}
tcWrapResult
Actual: TypeRep b_ak7z[ssk:4]
Expected: Check{b_ak7I[tau:4]}
tc_sub_type_ds
ty_actual = TypeRep b_ak7z[ssk:4]
ty_expected = b_ak7I[tau:4]
deeply_instantiate final subst
origin: arising from a use of ‘y_aelo’
type: TypeRep b_ak7z[ssk:4]
new type: TypeRep b_ak7z[ssk:4]
subst: [TCvSubst
In scope: InScope {k1_ak7x b_ak7z}
Type env: []
Co env: []]
u_tys
tclvl 4
TypeRep b_ak7z[ssk:4] ~ b_ak7I[tau:4]
arising from a type equality TypeRep b_ak7z[ssk:4] ~ b_ak7I[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from
b_ak7I[tau:4] ~ TypeRep b_ak7z[ssk:4]
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
b_ak7I[tau:4] ~ TypeRep b_ak7z[ssk:4]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak7I[tau:4] := TypeRep b_ak7z[ssk:4]
u_tys yields no coercion
tc_sub_type_ds
ty_actual = IO ()
ty_expected = m_ak7B[tau:4] a_ak7D[tau:4]
deeply_instantiate final subst
origin: arising from a use of ‘print’
type: IO ()
new type: IO ()
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 4
IO () ~ m_ak7B[tau:4] a_ak7D[tau:4]
arising from a type equality IO () ~ m_ak7B[tau:4] a_ak7D[tau:4]
u_tys
tclvl 4
IO ~ m_ak7B[tau:4]
arising from a type equality IO () ~ m_ak7B[tau:4] a_ak7D[tau:4]
found filled tyvar m_ak7B[tau:4] :-> IO
u_tys yields no coercion
u_tys
tclvl 4
() ~ a_ak7D[tau:4]
arising from a type equality IO () ~ m_ak7B[tau:4] a_ak7D[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from a_ak7D[tau:4] ~ ()
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from a_ak7D[tau:4] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7D[tau:4] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId
>>= :: forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
instCallConstraints [$dMonad_ak7K]
Instantiating
all tyvars? True
origin arising from a do statement
type forall (m :: * -> *).
Monad m =>
forall a b. m a -> (a -> m b) -> m b
theta [Monad m]
leave_bndrs []
with [m_ak7J[tau:4]]
theta: [Monad m_ak7J[tau:4]]
Instantiating
all tyvars? True
origin arising from a do statement
type forall a b.
m_ak7J[tau:4] a -> (a -> m_ak7J[tau:4] b) -> m_ak7J[tau:4] b
theta []
leave_bndrs []
with [a_ak7L[tau:4], b_ak7M[tau:4]]
theta: []
tcSkolemise
tcSkolemise
4
expected_ty m_ak7J[tau:4] a_ak7L[tau:4]
inst tyvars []
given []
inst type m_ak7J[tau:4] a_ak7L[tau:4]
tcSkolemise
tcSkolemise
4
expected_ty a_ak7L[tau:4] -> m_ak7J[tau:4] b_ak7M[tau:4]
inst tyvars []
given []
inst type a_ak7L[tau:4] -> m_ak7J[tau:4] b_ak7M[tau:4]
tcSkolemise
tcSkolemise
4
expected_ty m_ak7J[tau:4] b_ak7M[tau:4]
inst tyvars []
given []
inst type m_ak7J[tau:4] b_ak7M[tau:4]
tcSubTypeDS_O
arising from a do statement
a type expected by the context
m_ak7J[tau:4] b_ak7M[tau:4]
Check{m_ak7B[tau:4] b_ak7E[tau:4]}
tc_sub_type_ds
ty_actual = m_ak7J[tau:4] b_ak7M[tau:4]
ty_expected = m_ak7B[tau:4] b_ak7E[tau:4]
deeply_instantiate final subst
origin: arising from a do statement
type: m_ak7J[tau:4] b_ak7M[tau:4]
new type: m_ak7J[tau:4] b_ak7M[tau:4]
subst: [TCvSubst
In scope: InScope {m_ak7J b_ak7M}
Type env: []
Co env: []]
u_tys
tclvl 4
m_ak7J[tau:4] b_ak7M[tau:4] ~ m_ak7B[tau:4] b_ak7E[tau:4]
arising from a type equality m_ak7J[tau:4] b_ak7M[tau:4]
~
m_ak7B[tau:4] b_ak7E[tau:4]
u_tys
tclvl 4
m_ak7J[tau:4] ~ m_ak7B[tau:4]
arising from a type equality m_ak7J[tau:4] b_ak7M[tau:4]
~
m_ak7B[tau:4] b_ak7E[tau:4]
u_tys
tclvl 4
* -> * ~ * -> *
arising from a kind equality arising from m_ak7J[tau:4] ~ IO
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from m_ak7J[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7J[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from m_ak7J[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak7J[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak7J[tau:4] := IO
u_tys yields no coercion
u_tys
tclvl 4
b_ak7M[tau:4] ~ b_ak7E[tau:4]
arising from a type equality m_ak7J[tau:4] b_ak7M[tau:4]
~
m_ak7B[tau:4] b_ak7E[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from b_ak7M[tau:4] ~ ()
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from b_ak7M[tau:4] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak7M[tau:4] := ()
u_tys yields no coercion
u_tys yields no coercion
tcInferId
pure :: forall (f :: * -> *). Applicative f => forall a. a -> f a
instCallConstraints [$dApplicative_ak7O]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall (f :: * -> *). Applicative f => forall a. a -> f a
theta [Applicative f]
leave_bndrs []
with [f_ak7N[tau:4]]
theta: [Applicative f_ak7N[tau:4]]
Instantiating
all tyvars? True
origin arising from a use of ‘pure’
type forall a. a -> f_ak7N[tau:4] a
theta []
leave_bndrs []
with [a_ak7P[tau:4]]
theta: []
tcPolyExprNC Check{a_ak7P[tau:4]}
tcSkolemise
tcSkolemise
4
expected_ty a_ak7P[tau:4]
inst tyvars []
given []
inst type a_ak7P[tau:4]
tcInferId x_aeln :: TypeRep a_ak7y[ssk:4]
tcCheckId
x_aeln
TypeRep a_ak7y[ssk:4]
Check{a_ak7P[tau:4]}
tcWrapResult
Actual: TypeRep a_ak7y[ssk:4]
Expected: Check{a_ak7P[tau:4]}
tc_sub_type_ds
ty_actual = TypeRep a_ak7y[ssk:4]
ty_expected = a_ak7P[tau:4]
deeply_instantiate final subst
origin: arising from a use of ‘x_aeln’
type: TypeRep a_ak7y[ssk:4]
new type: TypeRep a_ak7y[ssk:4]
subst: [TCvSubst
In scope: InScope {k2_ak7v k1_ak7x a_ak7y}
Type env: []
Co env: []]
u_tys
tclvl 4
TypeRep a_ak7y[ssk:4] ~ a_ak7P[tau:4]
arising from a type equality TypeRep a_ak7y[ssk:4] ~ a_ak7P[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from
a_ak7P[tau:4] ~ TypeRep a_ak7y[ssk:4]
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7P[tau:4] ~ TypeRep a_ak7y[ssk:4]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7P[tau:4] := TypeRep a_ak7y[ssk:4]
u_tys yields no coercion
tc_sub_type_ds
ty_actual = f_ak7N[tau:4] a_ak7P[tau:4]
ty_expected = m_ak7J[tau:4] a_ak7L[tau:4]
deeply_instantiate final subst
origin: arising from a use of ‘pure’
type: f_ak7N[tau:4] a_ak7P[tau:4]
new type: f_ak7N[tau:4] a_ak7P[tau:4]
subst: [TCvSubst
In scope: InScope {f_ak7N a_ak7P}
Type env: []
Co env: []]
u_tys
tclvl 4
f_ak7N[tau:4] a_ak7P[tau:4] ~ m_ak7J[tau:4] a_ak7L[tau:4]
arising from a type equality f_ak7N[tau:4] a_ak7P[tau:4]
~
m_ak7J[tau:4] a_ak7L[tau:4]
u_tys
tclvl 4
f_ak7N[tau:4] ~ m_ak7J[tau:4]
arising from a type equality f_ak7N[tau:4] a_ak7P[tau:4]
~
m_ak7J[tau:4] a_ak7L[tau:4]
u_tys
tclvl 4
* -> * ~ * -> *
arising from a kind equality arising from f_ak7N[tau:4] ~ IO
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from f_ak7N[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ak7N[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from f_ak7N[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from f_ak7N[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar f_ak7N[tau:4] := IO
u_tys yields no coercion
u_tys
tclvl 4
a_ak7P[tau:4] ~ a_ak7L[tau:4]
arising from a type equality f_ak7N[tau:4] a_ak7P[tau:4]
~
m_ak7J[tau:4] a_ak7L[tau:4]
found filled tyvar a_ak7P[tau:4] :-> TypeRep a_ak7y[ssk:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from
a_ak7L[tau:4] ~ TypeRep a_ak7y[ssk:4]
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7L[tau:4] ~ TypeRep a_ak7y[ssk:4]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7L[tau:4] := TypeRep a_ak7y[ssk:4]
u_tys yields no coercion
u_tys yields no coercion
tc_sub_tc_type (general case)
ty_actual = a_ak7L[tau:4]
ty_expected = TypeRep t_ak7R[tau:4]
tcSkolemise
tcSkolemise
4
expected_ty TypeRep t_ak7R[tau:4]
inst tyvars []
given []
inst type TypeRep t_ak7R[tau:4]
tc_sub_type_ds
ty_actual = a_ak7L[tau:4]
ty_expected = TypeRep t_ak7R[tau:4]
tcSubTypeDS_NC_O following filled act meta-tyvar:
a_ak7L[tau:4] --> TypeRep a_ak7y[ssk:4]
tc_sub_type_ds
ty_actual = TypeRep a_ak7y[ssk:4]
ty_expected = TypeRep t_ak7R[tau:4]
deeply_instantiate final subst
origin: arising from a pattern
type: TypeRep a_ak7y[ssk:4]
new type: TypeRep a_ak7y[ssk:4]
subst: [TCvSubst
In scope: InScope {k1_ajUb k1_ak7c k1_ak7x a_ak7y}
Type env: []
Co env: []]
u_tys
tclvl 4
TypeRep a_ak7y[ssk:4] ~ TypeRep t_ak7R[tau:4]
arising from a type equality TypeRep t_ak7R[tau:4] ~ a_ak7L[tau:4]
u_tys
tclvl 4
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
~
k2_ak7Q[tau:4]
arising from a type equality TypeRep t_ak7R[tau:4] ~ a_ak7L[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from
k2_ak7Q[tau:4]
~
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
k2_ak7Q[tau:4]
~
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar
k2_ak7Q[tau:4] := k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
u_tys yields no coercion
u_tys
tclvl 4
a_ak7y[ssk:4] ~ t_ak7R[tau:4]
arising from a type equality TypeRep t_ak7R[tau:4] ~ a_ak7L[tau:4]
u_tys
tclvl 4
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
~
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys
tclvl 4
k1_ak7x[ssk:4] ~ k1_ak7x[ssk:4]
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys yields no coercion
u_tys
tclvl 4
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
~
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys
tclvl 4
k1_ak7c[ssk:3] ~ k1_ak7c[ssk:3]
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys yields no coercion
u_tys
tclvl 4
k1_ajUb[ssk:2] -> * ~ k1_ajUb[ssk:2] -> *
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys
tclvl 4
k1_ajUb[ssk:2] ~ k1_ajUb[ssk:2]
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys yields no coercion
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
t_ak7R[tau:4] ~ a_ak7y[ssk:4]
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar t_ak7R[tau:4] := a_ak7y[ssk:4]
u_tys yields no coercion
u_tys yields no coercion
tcPatSynPat
TRApp
Check{a_ak7L[tau:4]}
TypeRep t_ak7R[tau:4]
[k1_ak7S[ssk:5], a_ak7T[ssk:5], b_ak7U[ssk:5]]
[(t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])]
[]
[TypeRep a_ak7T[ssk:5], TypeRep b_ak7U[ssk:5]]
instCall <>
checkConstraints {
tcPatBndr(not let)
x_aelp
TypeRep a_ak7T[ssk:5]
tcExtendIdBndrs [x_aelp[<NotTopLevel>]]
env2
[(x_aelp, Identifier[x_aelp::TypeRep a_ak7T[ssk:5], NotLetBound])]
tcPatBndr(not let)
y_aelq
TypeRep b_ak7U[ssk:5]
tcExtendIdBndrs [y_aelq[<NotTopLevel>]]
env2
[(y_aelq, Identifier[y_aelq::TypeRep b_ak7U[ssk:5], NotLetBound])]
tcInferId print :: forall a. Show a => a -> IO ()
instCallConstraints [$dShow_ak7X]
Instantiating
all tyvars? True
origin arising from a use of ‘print’
type forall a. Show a => a -> IO ()
theta [Show a]
leave_bndrs []
with [a_ak7W[tau:5]]
theta: [Show a_ak7W[tau:5]]
tcPolyExprNC Check{a_ak7W[tau:5]}
tcSkolemise
tcSkolemise
5
expected_ty a_ak7W[tau:5]
inst tyvars []
given []
inst type a_ak7W[tau:5]
matchExpectedTyConApp
(,)
[a_11, b_12]
[a_ak7Y[tau:5], b_ak7Z[tau:5]]
u_tys
tclvl 5
(a_ak7Y[tau:5], b_ak7Z[tau:5]) ~ a_ak7W[tau:5]
arising from a type equality (a_ak7Y[tau:5], b_ak7Z[tau:5])
~
a_ak7W[tau:5]
u_tys
tclvl 5
* ~ *
arising from a kind equality arising from
a_ak7W[tau:5] ~ (a_ak7Y[tau:5], b_ak7Z[tau:5])
u_tys
tclvl 5
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7W[tau:5] ~ (a_ak7Y[tau:5], b_ak7Z[tau:5])
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7W[tau:5] := (a_ak7Y[tau:5], b_ak7Z[tau:5])
u_tys yields no coercion
tcPolyExpr Check{a_ak7Y[tau:5]}
tcPolyExprNC Check{a_ak7Y[tau:5]}
tcSkolemise
tcSkolemise
5
expected_ty a_ak7Y[tau:5]
inst tyvars []
given []
inst type a_ak7Y[tau:5]
tcInferId x_aelp :: TypeRep a_ak7T[ssk:5]
tcCheckId
x_aelp
TypeRep a_ak7T[ssk:5]
Check{a_ak7Y[tau:5]}
tcWrapResult
Actual: TypeRep a_ak7T[ssk:5]
Expected: Check{a_ak7Y[tau:5]}
tc_sub_type_ds
ty_actual = TypeRep a_ak7T[ssk:5]
ty_expected = a_ak7Y[tau:5]
deeply_instantiate final subst
origin: arising from a use of ‘x_aelp’
type: TypeRep a_ak7T[ssk:5]
new type: TypeRep a_ak7T[ssk:5]
subst: [TCvSubst
In scope: InScope {k2_ak7Q k1_ak7S a_ak7T}
Type env: []
Co env: []]
u_tys
tclvl 5
TypeRep a_ak7T[ssk:5] ~ a_ak7Y[tau:5]
arising from a type equality TypeRep a_ak7T[ssk:5] ~ a_ak7Y[tau:5]
u_tys
tclvl 5
* ~ *
arising from a kind equality arising from
a_ak7Y[tau:5] ~ TypeRep a_ak7T[ssk:5]
u_tys
tclvl 5
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
a_ak7Y[tau:5] ~ TypeRep a_ak7T[ssk:5]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak7Y[tau:5] := TypeRep a_ak7T[ssk:5]
u_tys yields no coercion
tcPolyExpr Check{b_ak7Z[tau:5]}
tcPolyExprNC Check{b_ak7Z[tau:5]}
tcSkolemise
tcSkolemise
5
expected_ty b_ak7Z[tau:5]
inst tyvars []
given []
inst type b_ak7Z[tau:5]
tcInferId y_aelq :: TypeRep b_ak7U[ssk:5]
tcCheckId
y_aelq
TypeRep b_ak7U[ssk:5]
Check{b_ak7Z[tau:5]}
tcWrapResult
Actual: TypeRep b_ak7U[ssk:5]
Expected: Check{b_ak7Z[tau:5]}
tc_sub_type_ds
ty_actual = TypeRep b_ak7U[ssk:5]
ty_expected = b_ak7Z[tau:5]
deeply_instantiate final subst
origin: arising from a use of ‘y_aelq’
type: TypeRep b_ak7U[ssk:5]
new type: TypeRep b_ak7U[ssk:5]
subst: [TCvSubst
In scope: InScope {k1_ak7S b_ak7U}
Type env: []
Co env: []]
u_tys
tclvl 5
TypeRep b_ak7U[ssk:5] ~ b_ak7Z[tau:5]
arising from a type equality TypeRep b_ak7U[ssk:5] ~ b_ak7Z[tau:5]
u_tys
tclvl 5
* ~ *
arising from a kind equality arising from
b_ak7Z[tau:5] ~ TypeRep b_ak7U[ssk:5]
u_tys
tclvl 5
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from
b_ak7Z[tau:5] ~ TypeRep b_ak7U[ssk:5]
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar b_ak7Z[tau:5] := TypeRep b_ak7U[ssk:5]
u_tys yields no coercion
tc_sub_type_ds
ty_actual = IO ()
ty_expected = m_ak7J[tau:4] b_ak7M[tau:4]
deeply_instantiate final subst
origin: arising from a use of ‘print’
type: IO ()
new type: IO ()
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 5
IO () ~ m_ak7J[tau:4] b_ak7M[tau:4]
arising from a type equality IO () ~ m_ak7J[tau:4] b_ak7M[tau:4]
u_tys
tclvl 5
IO ~ m_ak7J[tau:4]
arising from a type equality IO () ~ m_ak7J[tau:4] b_ak7M[tau:4]
found filled tyvar m_ak7J[tau:4] :-> IO
u_tys yields no coercion
u_tys
tclvl 5
() ~ b_ak7M[tau:4]
arising from a type equality IO () ~ m_ak7J[tau:4] b_ak7M[tau:4]
found filled tyvar b_ak7M[tau:4] :-> ()
u_tys yields no coercion
u_tys yields no coercion
newTcEvBinds unique = ak80
checkConstraints } EvBindsVar<ak80>
tcInferId
fail :: forall (m :: * -> *). Monad m => forall a. String -> m a
instCallConstraints [$dMonad_ak84]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aelp y_aelq’
type forall (m :: * -> *). Monad m => forall a. String -> m a
theta [Monad m]
leave_bndrs []
with [m_ak83[tau:4]]
theta: [Monad m_ak83[tau:4]]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aelp y_aelq’
type forall a. String -> m_ak83[tau:4] a
theta []
leave_bndrs []
with [a_ak85[tau:4]]
theta: []
tcSkolemise
tcSkolemise
4
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_tc_type (general case)
ty_actual = [Char]
ty_expected = String
tcSkolemise
tcSkolemise
4
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_type_ds
ty_actual = [Char]
ty_expected = String
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aelp y_aelq’
type: [Char]
new type: [Char]
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 4
[Char] ~ String
arising from a type equality String ~ [Char]
u_tys
tclvl 4
Char ~ Char
arising from a type equality String ~ [Char]
u_tys yields no coercion
u_tys yields no coercion
tcSubTypeDS_O
arising from a do statement
with the failable pattern ‘TRApp x_aelp y_aelq’
a type expected by the context
m_ak83[tau:4] a_ak85[tau:4]
Check{m_ak7J[tau:4] b_ak7M[tau:4]}
tc_sub_type_ds
ty_actual = m_ak83[tau:4] a_ak85[tau:4]
ty_expected = m_ak7J[tau:4] b_ak7M[tau:4]
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aelp y_aelq’
type: m_ak83[tau:4] a_ak85[tau:4]
new type: m_ak83[tau:4] a_ak85[tau:4]
subst: [TCvSubst
In scope: InScope {m_ak83 a_ak85}
Type env: []
Co env: []]
u_tys
tclvl 4
m_ak83[tau:4] a_ak85[tau:4] ~ m_ak7J[tau:4] b_ak7M[tau:4]
arising from a type equality m_ak83[tau:4] a_ak85[tau:4]
~
m_ak7J[tau:4] b_ak7M[tau:4]
u_tys
tclvl 4
m_ak83[tau:4] ~ m_ak7J[tau:4]
arising from a type equality m_ak83[tau:4] a_ak85[tau:4]
~
m_ak7J[tau:4] b_ak7M[tau:4]
u_tys
tclvl 4
* -> * ~ * -> *
arising from a kind equality arising from m_ak83[tau:4] ~ IO
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from m_ak83[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak83[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from m_ak83[tau:4] ~ IO
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak83[tau:4] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak83[tau:4] := IO
u_tys yields no coercion
u_tys
tclvl 4
a_ak85[tau:4] ~ b_ak7M[tau:4]
arising from a type equality m_ak83[tau:4] a_ak85[tau:4]
~
m_ak7J[tau:4] b_ak7M[tau:4]
u_tys
tclvl 4
* ~ *
arising from a kind equality arising from a_ak85[tau:4] ~ ()
u_tys
tclvl 4
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from a_ak85[tau:4] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak85[tau:4] := ()
u_tys yields no coercion
u_tys yields no coercion
newTcEvBinds unique = ak86
checkConstraints } EvBindsVar<ak86>
tcInferId
fail :: forall (m :: * -> *). Monad m => forall a. String -> m a
instCallConstraints [$dMonad_ak88]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aeln y_aelo’
type forall (m :: * -> *). Monad m => forall a. String -> m a
theta [Monad m]
leave_bndrs []
with [m_ak87[tau:3]]
theta: [Monad m_ak87[tau:3]]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aeln y_aelo’
type forall a. String -> m_ak87[tau:3] a
theta []
leave_bndrs []
with [a_ak89[tau:3]]
theta: []
tcSkolemise
tcSkolemise
3
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_tc_type (general case)
ty_actual = [Char]
ty_expected = String
tcSkolemise
tcSkolemise
3
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_type_ds
ty_actual = [Char]
ty_expected = String
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aeln y_aelo’
type: [Char]
new type: [Char]
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 3
[Char] ~ String
arising from a type equality String ~ [Char]
u_tys
tclvl 3
Char ~ Char
arising from a type equality String ~ [Char]
u_tys yields no coercion
u_tys yields no coercion
tcSubTypeDS_O
arising from a do statement
with the failable pattern ‘TRApp x_aeln y_aelo’
a type expected by the context
m_ak87[tau:3] a_ak89[tau:3]
Check{m_ak7o[tau:3] b_ak7r[tau:3]}
tc_sub_type_ds
ty_actual = m_ak87[tau:3] a_ak89[tau:3]
ty_expected = m_ak7o[tau:3] b_ak7r[tau:3]
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aeln y_aelo’
type: m_ak87[tau:3] a_ak89[tau:3]
new type: m_ak87[tau:3] a_ak89[tau:3]
subst: [TCvSubst
In scope: InScope {m_ak87 a_ak89}
Type env: []
Co env: []]
u_tys
tclvl 3
m_ak87[tau:3] a_ak89[tau:3] ~ m_ak7o[tau:3] b_ak7r[tau:3]
arising from a type equality m_ak87[tau:3] a_ak89[tau:3]
~
m_ak7o[tau:3] b_ak7r[tau:3]
u_tys
tclvl 3
m_ak87[tau:3] ~ m_ak7o[tau:3]
arising from a type equality m_ak87[tau:3] a_ak89[tau:3]
~
m_ak7o[tau:3] b_ak7r[tau:3]
u_tys
tclvl 3
* -> * ~ * -> *
arising from a kind equality arising from m_ak87[tau:3] ~ IO
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from m_ak87[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak87[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from m_ak87[tau:3] ~ IO
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak87[tau:3] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak87[tau:3] := IO
u_tys yields no coercion
u_tys
tclvl 3
a_ak89[tau:3] ~ b_ak7r[tau:3]
arising from a type equality m_ak87[tau:3] a_ak89[tau:3]
~
m_ak7o[tau:3] b_ak7r[tau:3]
u_tys
tclvl 3
* ~ *
arising from a kind equality arising from a_ak89[tau:3] ~ ()
u_tys
tclvl 3
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from a_ak89[tau:3] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak89[tau:3] := ()
u_tys yields no coercion
u_tys yields no coercion
newTcEvBinds unique = ak8a
checkConstraints } EvBindsVar<ak8a>
tcInferId
fail :: forall (m :: * -> *). Monad m => forall a. String -> m a
instCallConstraints [$dMonad_ak8c]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aell y_aelm’
type forall (m :: * -> *). Monad m => forall a. String -> m a
theta [Monad m]
leave_bndrs []
with [m_ak8b[tau:2]]
theta: [Monad m_ak8b[tau:2]]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aell y_aelm’
type forall a. String -> m_ak8b[tau:2] a
theta []
leave_bndrs []
with [a_ak8d[tau:2]]
theta: []
tcSkolemise
tcSkolemise
2
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_tc_type (general case)
ty_actual = [Char]
ty_expected = String
tcSkolemise
tcSkolemise
2
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_type_ds
ty_actual = [Char]
ty_expected = String
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aell y_aelm’
type: [Char]
new type: [Char]
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 2
[Char] ~ String
arising from a type equality String ~ [Char]
u_tys
tclvl 2
Char ~ Char
arising from a type equality String ~ [Char]
u_tys yields no coercion
u_tys yields no coercion
tcSubTypeDS_O
arising from a do statement
with the failable pattern ‘TRApp x_aell y_aelm’
a type expected by the context
m_ak8b[tau:2] a_ak8d[tau:2]
Check{m_ak73[tau:2] b_ak76[tau:2]}
tc_sub_type_ds
ty_actual = m_ak8b[tau:2] a_ak8d[tau:2]
ty_expected = m_ak73[tau:2] b_ak76[tau:2]
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aell y_aelm’
type: m_ak8b[tau:2] a_ak8d[tau:2]
new type: m_ak8b[tau:2] a_ak8d[tau:2]
subst: [TCvSubst
In scope: InScope {m_ak8b a_ak8d}
Type env: []
Co env: []]
u_tys
tclvl 2
m_ak8b[tau:2] a_ak8d[tau:2] ~ m_ak73[tau:2] b_ak76[tau:2]
arising from a type equality m_ak8b[tau:2] a_ak8d[tau:2]
~
m_ak73[tau:2] b_ak76[tau:2]
u_tys
tclvl 2
m_ak8b[tau:2] ~ m_ak73[tau:2]
arising from a type equality m_ak8b[tau:2] a_ak8d[tau:2]
~
m_ak73[tau:2] b_ak76[tau:2]
u_tys
tclvl 2
* -> * ~ * -> *
arising from a kind equality arising from m_ak8b[tau:2] ~ IO
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from m_ak8b[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak8b[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from m_ak8b[tau:2] ~ IO
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak8b[tau:2] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak8b[tau:2] := IO
u_tys yields no coercion
u_tys
tclvl 2
a_ak8d[tau:2] ~ b_ak76[tau:2]
arising from a type equality m_ak8b[tau:2] a_ak8d[tau:2]
~
m_ak73[tau:2] b_ak76[tau:2]
u_tys
tclvl 2
* ~ *
arising from a kind equality arising from a_ak8d[tau:2] ~ ()
u_tys
tclvl 2
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from a_ak8d[tau:2] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak8d[tau:2] := ()
u_tys yields no coercion
u_tys yields no coercion
newTcEvBinds unique = ak8e
checkConstraints } EvBindsVar<ak8e>
tcInferId
fail :: forall (m :: * -> *). Monad m => forall a. String -> m a
instCallConstraints [$dMonad_ak8g]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aegH y_aegI’
type forall (m :: * -> *). Monad m => forall a. String -> m a
theta [Monad m]
leave_bndrs []
with [m_ak8f[tau:1]]
theta: [Monad m_ak8f[tau:1]]
Instantiating
all tyvars? True
origin arising from a do statement
with the failable pattern ‘TRApp x_aegH y_aegI’
type forall a. String -> m_ak8f[tau:1] a
theta []
leave_bndrs []
with [a_ak8h[tau:1]]
theta: []
tcSkolemise
tcSkolemise
1
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_tc_type (general case)
ty_actual = [Char]
ty_expected = String
tcSkolemise
tcSkolemise
1
expected_ty String
inst tyvars []
given []
inst type String
tc_sub_type_ds
ty_actual = [Char]
ty_expected = String
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aegH y_aegI’
type: [Char]
new type: [Char]
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 1
[Char] ~ String
arising from a type equality String ~ [Char]
u_tys
tclvl 1
Char ~ Char
arising from a type equality String ~ [Char]
u_tys yields no coercion
u_tys yields no coercion
tcSubTypeDS_O
arising from a do statement
with the failable pattern ‘TRApp x_aegH y_aegI’
a type expected by the context
m_ak8f[tau:1] a_ak8h[tau:1]
Check{m_ajMD[tau:1] b_ajMG[tau:1]}
tc_sub_type_ds
ty_actual = m_ak8f[tau:1] a_ak8h[tau:1]
ty_expected = m_ajMD[tau:1] b_ajMG[tau:1]
deeply_instantiate final subst
origin: arising from a do statement
with the failable pattern ‘TRApp x_aegH y_aegI’
type: m_ak8f[tau:1] a_ak8h[tau:1]
new type: m_ak8f[tau:1] a_ak8h[tau:1]
subst: [TCvSubst
In scope: InScope {m_ak8f a_ak8h}
Type env: []
Co env: []]
u_tys
tclvl 1
m_ak8f[tau:1] a_ak8h[tau:1] ~ m_ajMD[tau:1] b_ajMG[tau:1]
arising from a type equality m_ak8f[tau:1] a_ak8h[tau:1]
~
m_ajMD[tau:1] b_ajMG[tau:1]
u_tys
tclvl 1
m_ak8f[tau:1] ~ m_ajMD[tau:1]
arising from a type equality m_ak8f[tau:1] a_ak8h[tau:1]
~
m_ajMD[tau:1] b_ajMG[tau:1]
u_tys
tclvl 1
* -> * ~ * -> *
arising from a kind equality arising from m_ak8f[tau:1] ~ IO
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from m_ak8f[tau:1] ~ IO
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak8f[tau:1] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from m_ak8f[tau:1] ~ IO
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from m_ak8f[tau:1] ~ IO
u_tys yields no coercion
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar m_ak8f[tau:1] := IO
u_tys yields no coercion
u_tys
tclvl 1
a_ak8h[tau:1] ~ b_ajMG[tau:1]
arising from a type equality m_ak8f[tau:1] a_ak8h[tau:1]
~
m_ajMD[tau:1] b_ajMG[tau:1]
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from a_ak8h[tau:1] ~ ()
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from a_ak8h[tau:1] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar a_ak8h[tau:1] := ()
u_tys yields no coercion
u_tys yields no coercion
tcSpecPrags main []
} End of bindings for
[main]
NonRecursive
main IO ()
tcExtendIdBndrs [main[<TopLevel>]]
env2 [(main, Identifier[main::IO (), TopLevelLet])]
complete_matches
[(NonRecursive,
{main
= do let x_ae7T :: ComposeK Maybe Maybe Int
x_ae7T = undefined
TRApp x_aegH y_aegI <- pure $ typeOf x_ae7T
print (x_aegH, y_aegI)
TRApp x_aell y_aelm <- pure x_aegH
print (x_aell, y_aelm)
TRApp x_aeln y_aelo <- pure x_aell
print (x_aeln, y_aelo)
TRApp x_aelp y_aelq <- pure x_aeln
print (x_aelp, y_aelq)})]
[main :: IO ()]
complete_matches []
txExtendKindEnv []
env2 []
complete_matches
[]
[]
complete_matches []
Tc6
Tc7
End of tcVectDecls: LIE:
WC {wc_simple =
[WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack (CNonCanonical)
[WD] $dMonad_ajME {0}:: Monad m_ajMD[tau:1] (CNonCanonical)
[WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 2
Skolems = k1_ajUb[ssk:2]
(a_ajUc[ssk:2] :: k1_ajUb[ssk:2] -> k2_ajU9[tau:1])
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
No-eqs = False
Status = Unsolved
Given =
$d~_ajUe :: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])
Wanted =
WC {wc_simple =
[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2] (CNonCanonical)
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2] (CNonCanonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 3
Skolems = k1_ak7c[ssk:3]
(a_ak7d[ssk:3] :: k1_ak7c[ssk:3] -> k2_ak7a[tau:2])
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7f :: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4] -> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5]
-> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show
a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8a>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8e>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Tc7a
checkMain found Main main
tcInferId main :: IO ()
tcCheckId
main
IO ()
Check{IO t_ak8i[tau:1]}
tcWrapResult
Actual: IO ()
Expected: Check{IO t_ak8i[tau:1]}
tc_sub_type_ds
ty_actual = IO ()
ty_expected = IO t_ak8i[tau:1]
deeply_instantiate final subst
origin: arising from a use of ‘main’
type: IO ()
new type: IO ()
subst: [TCvSubst In scope: InScope {} Type env: [] Co env: []]
u_tys
tclvl 1
IO () ~ IO t_ak8i[tau:1]
arising from a type equality IO () ~ IO t_ak8i[tau:1]
u_tys
tclvl 1
() ~ t_ak8i[tau:1]
arising from a type equality IO () ~ IO t_ak8i[tau:1]
u_tys
tclvl 1
* ~ *
arising from a kind equality arising from t_ak8i[tau:1] ~ ()
u_tys
tclvl 1
'GHC.Types.LiftedRep ~ 'GHC.Types.LiftedRep
arising from a kind equality arising from t_ak8i[tau:1] ~ ()
u_tys yields no coercion
u_tys yields no coercion
writeMetaTyVar t_ak8i[tau:1] := ()
u_tys yields no coercion
u_tys yields no coercion
simplifyTop {
wanted = WC {wc_simple =
[WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack (CNonCanonical)
[WD] $dMonad_ajME {0}:: Monad m_ajMD[tau:1] (CNonCanonical)
[WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 2
Skolems = k1_ajUb[ssk:2]
(a_ajUc[ssk:2] :: k1_ajUb[ssk:2] -> k2_ajU9[tau:1])
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
No-eqs = False
Status = Unsolved
Given =
$d~_ajUe :: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])
Wanted =
WC {wc_simple =
[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2] (CNonCanonical)
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2] (CNonCanonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 3
Skolems = k1_ak7c[ssk:3]
(a_ak7d[ssk:3] :: k1_ak7c[ssk:3] -> k2_ak7a[tau:2])
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7f :: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4]
-> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad
m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show
a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad
m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad
m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5]
-> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show
a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8a>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8e>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
newTcEvBinds unique = ak9O
solveWanteds {
WC {wc_simple =
[WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack (CNonCanonical)
[WD] $dMonad_ajME {0}:: Monad m_ajMD[tau:1] (CNonCanonical)
[WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 2
Skolems = k1_ajUb[ssk:2]
(a_ajUc[ssk:2] :: k1_ajUb[ssk:2] -> k2_ajU9[tau:1])
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
No-eqs = False
Status = Unsolved
Given =
$d~_ajUe :: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])
Wanted =
WC {wc_simple =
[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2] (CNonCanonical)
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2] (CNonCanonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 3
Skolems = k1_ak7c[ssk:3]
(a_ak7d[ssk:3] :: k1_ak7c[ssk:3] -> k2_ak7a[tau:2])
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7f :: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4] -> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5]
-> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show
a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8a>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8e>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
solveSimpleWanteds {
{[WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack (CNonCanonical),
[WD] $dMonad_ajME {0}:: Monad m_ajMD[tau:1] (CNonCanonical),
[WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical),
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical),
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
-----------------------------
Start solver pipeline {
work item = [WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack (CNonCanonical)
inerts = {Unsolved goals = 0}
rest of worklist = WL {Non-eqs = [WD] $dMonad_ajME {0}:: Monad
m_ajMD[tau:1] (CNonCanonical)
[WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack (CNonCanonical)
canonicalize (non-canonical)
[WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack (CNonCanonical)
canEvNC:cls GHC.Classes.IP ["callStack", GHC.Stack.Types.CallStack]
flatten_many {
"callStack"
GHC.Stack.Types.CallStack
flatten }
"callStack"
GHC.Stack.Types.CallStack
canClass
[WD] $dIP_ajMr {0}:: GHC.Stack.Types.HasCallStack
?callStack::GHC.Stack.Types.CallStack
ContinueWith [WD] $dIP_ajMr {0}:: ?callStack::GHC.Stack.Types.CallStack
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dIP_ajMr {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Emitting new wanted
$dIP_ak9Y :: ?callStack::GHC.Stack.Types.CallStack
arising from a use of implicit parameter ‘?callStack’
at Typeable1.hs:11:13-21
Emitting fresh work
[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CNonCanonical)
addTcEvBind
ak9O
[W] $dIP_ajMr
= (undefined, Typeable1.hs:11:13-21) : $dIP_ak9Y `cast` (Sym
(GHC.Classes.N:IP[0]
<"callStack">_N
<GHC.Stack.Types.CallStack>_N))
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CNonCanonical)
inerts = {Unsolved goals = 0}
rest of worklist = WL {Non-eqs = [WD] $dMonad_ajME {0}:: Monad
m_ajMD[tau:1] (CNonCanonical)
[WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CNonCanonical)
canonicalize (non-canonical)
[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CNonCanonical)
canEvNC:cls GHC.Classes.IP ["callStack", GHC.Stack.Types.CallStack]
flatten_many {
"callStack"
GHC.Stack.Types.CallStack
flatten }
"callStack"
GHC.Stack.Types.CallStack
canClass
[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack
?callStack::GHC.Stack.Types.CallStack
ContinueWith [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
doTopReact
[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
matchClassInst pred = ?callStack::GHC.Stack.Types.CallStack {
matchClass not matching dict ?callStack::GHC.Stack.Types.CallStack
} matchClassInst result NoInstance
try_fundeps
[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ajME {0}:: Monad
m_ajMD[tau:1] (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
rest of worklist = WL {Non-eqs = [WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dMonad_ajME {0}:: Monad
m_ajMD[tau:1] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ajME {0}:: Monad m_ajMD[tau:1] (CNonCanonical)
canEvNC:cls Monad [m_ajMD[tau:1]]
flatten_many { m_ajMD[tau:1]
Following filled tyvar m_ajMD[tau:1] = IO
flatten } IO
canClass
[WD] $dMonad_ajME {0}:: Monad m_ajMD[tau:1]
Monad IO
ContinueWith [WD] $dMonad_ajME {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ajME {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ajME {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ajME {0}:: Monad IO (CDictCan(psc))
matchClassInst pred = Monad IO {
matchClass success
dict Monad IO
witness GHC.Base.$fMonadIO Monad IO
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for [WD] $dMonad_ajME {0}:: Monad IO
updSolvedSetTcs: [WD] $dMonad_ajME {0}:: Monad IO
addTcEvBind
ak9O
[W] $dMonad_ajME = GHC.Base.$fMonadIO @[] []
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
rest of worklist = WL {Non-eqs = [WD] $dTypeable_ajNi {0}:: Typeable
a_ajNh[tau:1] (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dApplicative_ajMU {0}:: Applicative
f_ajMT[tau:1] (CNonCanonical)
canEvNC:cls Applicative [f_ajMT[tau:1]]
flatten_many { f_ajMT[tau:1]
Following filled tyvar f_ajMT[tau:1] = IO
flatten } IO
canClass
[WD] $dApplicative_ajMU {0}:: Applicative f_ajMT[tau:1]
Applicative IO
ContinueWith [WD] $dApplicative_ajMU {0}:: Applicative IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dApplicative_ajMU {0}:: Applicative
IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dApplicative_ajMU {0}:: Applicative
IO (CDictCan(psc))
doTopReact
[WD] $dApplicative_ajMU {0}:: Applicative IO (CDictCan(psc))
matchClassInst pred = Applicative IO {
matchClass success
dict Applicative IO
witness GHC.Base.$fApplicativeIO Applicative IO
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dApplicative_ajMU {0}:: Applicative IO
updSolvedSetTcs: [WD] $dApplicative_ajMU {0}:: Applicative IO
addTcEvBind
ak9O
[W] $dApplicative_ajMU = GHC.Base.$fApplicativeIO @[] []
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_ajNi {0}:: Typeable
a_ajNh[tau:1] (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak8g {0}:: Monad
m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_ajNi {0}:: Typeable
a_ajNh[tau:1] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1] (CNonCanonical)
canEvNC:cls Typeable [*, a_ajNh[tau:1]]
flatten_many {
*
a_ajNh[tau:1]
Following filled tyvar a_ajNh[tau:1] = ComposeK Maybe Maybe Int
flatten }
*
ComposeK Maybe Maybe Int
canClass
[WD] $dTypeable_ajNi {0}:: Typeable a_ajNh[tau:1]
Typeable (ComposeK Maybe Maybe Int)
ContinueWith [WD] $dTypeable_ajNi {0}:: Typeable
(ComposeK Maybe Maybe Int)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_ajNi {0}:: Typeable
(ComposeK Maybe Maybe Int) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_ajNi {0}:: Typeable
(ComposeK Maybe Maybe Int) (CDictCan)
doTopReact
[WD] $dTypeable_ajNi {0}:: Typeable
(ComposeK Maybe Maybe Int) (CDictCan)
matchClassInst pred = Typeable (ComposeK Maybe Maybe Int) {
} matchClassInst result
GenInst [Typeable (ComposeK Maybe Maybe), Typeable Int]
[safe]
doTopReact/found instance for
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
updSolvedSetTcs:
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
Emitting new wanted
$dTypeable_ak9Z :: Typeable (ComposeK Maybe Maybe)
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
Emitting new wanted
$dTypeable_aka0 :: Typeable Int
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
addTcEvBind
ak9O
[W] $dTypeable_ajNi
= ($dTypeable_ak9Z $dTypeable_aka0) :: Typeable ComposeK
Maybe Maybe Int
Emitting fresh work
[WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe) (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe) (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka0 {1}:: Typeable
Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe) (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe) (CNonCanonical)
canEvNC:cls Typeable [* -> *, ComposeK Maybe Maybe]
flatten_many {
* -> *
ComposeK Maybe Maybe
flatten }
* -> *
ComposeK Maybe Maybe
canClass
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
Typeable (ComposeK Maybe Maybe)
ContinueWith [WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe) (CDictCan)
doTopReact
[WD] $dTypeable_ak9Z {1}:: Typeable
(ComposeK Maybe Maybe) (CDictCan)
matchClassInst pred = Typeable (ComposeK Maybe Maybe) {
} matchClassInst result
GenInst [Typeable (ComposeK Maybe), Typeable Maybe]
[safe]
doTopReact/found instance for
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
updSolvedSetTcs:
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
Emitting new wanted
$dTypeable_aka1 :: Typeable (ComposeK Maybe)
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
Emitting new wanted
$dTypeable_aka2 :: Typeable Maybe
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
addTcEvBind
ak9O
[W] $dTypeable_ak9Z
= ($dTypeable_aka1 $dTypeable_aka2) :: Typeable ComposeK
Maybe Maybe
Emitting fresh work
[WD] $dTypeable_aka1 {2}:: Typeable
(ComposeK Maybe) (CNonCanonical)
[WD] $dTypeable_aka2 {2}:: Typeable Maybe (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka1 {2}:: Typeable
(ComposeK Maybe) (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka2 {2}:: Typeable
Maybe (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka1 {2}:: Typeable
(ComposeK Maybe) (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka1 {2}:: Typeable
(ComposeK Maybe) (CNonCanonical)
canEvNC:cls Typeable [(* -> *) -> * -> *, ComposeK Maybe]
flatten_many {
(* -> *) -> * -> *
ComposeK Maybe
flatten }
(* -> *) -> * -> *
ComposeK Maybe
canClass
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
Typeable (ComposeK Maybe)
ContinueWith [WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka1 {2}:: Typeable
(ComposeK Maybe) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka1 {2}:: Typeable
(ComposeK Maybe) (CDictCan)
doTopReact
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe) (CDictCan)
matchClassInst pred = Typeable (ComposeK Maybe) {
} matchClassInst result
GenInst [Typeable ComposeK, Typeable Maybe]
[safe]
doTopReact/found instance for
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
updSolvedSetTcs:
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
Emitting new wanted
$dTypeable_aka3 :: Typeable ComposeK
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
Emitting new wanted
$dTypeable_aka4 :: Typeable Maybe
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
addTcEvBind
ak9O
[W] $dTypeable_aka1
= ($dTypeable_aka3 $dTypeable_aka4) :: Typeable ComposeK Maybe
Emitting fresh work
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK (CNonCanonical)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka3 {3}:: Typeable
ComposeK (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka4 {3}:: Typeable
Maybe (CNonCanonical)
[WD] $dTypeable_aka2 {2}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka3 {3}:: Typeable
ComposeK (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK (CNonCanonical)
canEvNC:cls Typeable [(* -> *) -> (* -> *) -> * -> *, ComposeK]
flatten_many {
(* -> *) -> (* -> *) -> * -> *
ComposeK
flatten }
(* -> *) -> (* -> *) -> * -> *
ComposeK
canClass
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
Typeable ComposeK
ContinueWith [WD] $dTypeable_aka3 {3}:: Typeable ComposeK
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka3 {3}:: Typeable
ComposeK (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka3 {3}:: Typeable
ComposeK (CDictCan)
doTopReact [WD] $dTypeable_aka3 {3}:: Typeable ComposeK (CDictCan)
matchClassInst pred = Typeable ComposeK {
} matchClassInst result
GenInst [Typeable *, Typeable *]
[safe]
doTopReact/found instance for
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
updSolvedSetTcs: [WD] $dTypeable_aka3 {3}:: Typeable ComposeK
Emitting new wanted
$dTypeable_aka5 :: Typeable *
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
Emitting new wanted
$dTypeable_aka6 :: Typeable *
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
addTcEvBind
ak9O
[W] $dTypeable_aka3 = TyCon ComposeK :: Typeable ComposeK
Emitting fresh work
[WD] $dTypeable_aka5 {4}:: Typeable * (CNonCanonical)
[WD] $dTypeable_aka6 {4}:: Typeable * (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka5 {4}:: Typeable * (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka6 {4}:: Typeable
* (CNonCanonical)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka2 {2}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka5 {4}:: Typeable * (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka5 {4}:: Typeable * (CNonCanonical)
canEvNC:cls Typeable [*, *]
flatten_many {
*
*
flatten }
*
*
canClass
[WD] $dTypeable_aka5 {4}:: Typeable *
Typeable *
ContinueWith [WD] $dTypeable_aka5 {4}:: Typeable *
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka5 {4}:: Typeable * (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka5 {4}:: Typeable * (CDictCan)
doTopReact [WD] $dTypeable_aka5 {4}:: Typeable * (CDictCan)
matchClassInst pred = Typeable * {
} matchClassInst result
GenInst [Typeable TYPE, Typeable 'GHC.Types.LiftedRep]
[safe]
doTopReact/found instance for [WD] $dTypeable_aka5 {4}:: Typeable *
updSolvedSetTcs: [WD] $dTypeable_aka5 {4}:: Typeable *
Emitting new wanted
$dTypeable_aka7 :: Typeable TYPE
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
Emitting new wanted
$dTypeable_aka8 :: Typeable 'GHC.Types.LiftedRep
arising from a use of ‘typeOf’ at Typeable1.hs:13:25-32
addTcEvBind
ak9O
[W] $dTypeable_aka5
= ($dTypeable_aka7 $dTypeable_aka8) :: Typeable *
Emitting fresh work
[WD] $dTypeable_aka7 {5}:: Typeable TYPE (CNonCanonical)
[WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka7 {5}:: Typeable
TYPE (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep (CNonCanonical)
[WD] $dTypeable_aka6 {4}:: Typeable * (CNonCanonical)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka2 {2}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka7 {5}:: Typeable
TYPE (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka7 {5}:: Typeable TYPE (CNonCanonical)
canEvNC:cls Typeable [GHC.Types.RuntimeRep -> *, TYPE]
flatten_many {
GHC.Types.RuntimeRep -> *
TYPE
flatten }
GHC.Types.RuntimeRep -> *
TYPE
canClass
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
Typeable TYPE
ContinueWith [WD] $dTypeable_aka7 {5}:: Typeable TYPE
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka7 {5}:: Typeable TYPE (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka7 {5}:: Typeable TYPE (CDictCan)
doTopReact [WD] $dTypeable_aka7 {5}:: Typeable TYPE (CDictCan)
matchClassInst pred = Typeable TYPE {
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
updSolvedSetTcs: [WD] $dTypeable_aka7 {5}:: Typeable TYPE
addTcEvBind
ak9O
[W] $dTypeable_aka7 = TyCon TYPE :: Typeable TYPE
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka6 {4}:: Typeable
* (CNonCanonical)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka2 {2}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep (CNonCanonical)
canEvNC:cls Typeable [GHC.Types.RuntimeRep, 'GHC.Types.LiftedRep]
flatten_many {
GHC.Types.RuntimeRep
'GHC.Types.LiftedRep
flatten }
GHC.Types.RuntimeRep
'GHC.Types.LiftedRep
canClass
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
Typeable 'GHC.Types.LiftedRep
ContinueWith [WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka8 {5}:: Typeable
'GHC.Types.LiftedRep (CDictCan)
doTopReact
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep (CDictCan)
matchClassInst pred = Typeable 'GHC.Types.LiftedRep {
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
updSolvedSetTcs:
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
addTcEvBind
ak9O
[W] $dTypeable_aka8
= TyCon 'GHC.Types.LiftedRep :: Typeable 'GHC.Types.LiftedRep
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka6 {4}:: Typeable * (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka4 {3}:: Typeable
Maybe (CNonCanonical)
[WD] $dTypeable_aka2 {2}:: Typeable Maybe (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka6 {4}:: Typeable * (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka6 {4}:: Typeable * (CNonCanonical)
canEvNC:cls Typeable [*, *]
flatten_many {
*
*
flatten }
*
*
canClass
[WD] $dTypeable_aka6 {4}:: Typeable *
Typeable *
ContinueWith [WD] $dTypeable_aka6 {4}:: Typeable *
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka6 {4}:: Typeable * (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka6 {4}:: Typeable * (CDictCan)
doTopReact [WD] $dTypeable_aka6 {4}:: Typeable * (CDictCan)
addTcEvBind
ak9O
[W] $dTypeable_aka6 = $dTypeable_aka5
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka4 {3}:: Typeable
Maybe (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka2 {2}:: Typeable
Maybe (CNonCanonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka4 {3}:: Typeable
Maybe (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe (CNonCanonical)
canEvNC:cls Typeable [* -> *, Maybe]
flatten_many {
* -> *
Maybe
flatten }
* -> *
Maybe
canClass
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
Typeable Maybe
ContinueWith [WD] $dTypeable_aka4 {3}:: Typeable Maybe
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka4 {3}:: Typeable Maybe (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka4 {3}:: Typeable Maybe (CDictCan)
doTopReact [WD] $dTypeable_aka4 {3}:: Typeable Maybe (CDictCan)
matchClassInst pred = Typeable Maybe {
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
updSolvedSetTcs: [WD] $dTypeable_aka4 {3}:: Typeable Maybe
addTcEvBind
ak9O
[W] $dTypeable_aka4 = TyCon Maybe :: Typeable Maybe
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka2 {2}:: Typeable
Maybe (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [WD] $dTypeable_aka0 {1}:: Typeable
Int (CNonCanonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka2 {2}:: Typeable
Maybe (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka2 {2}:: Typeable Maybe (CNonCanonical)
canEvNC:cls Typeable [* -> *, Maybe]
flatten_many {
* -> *
Maybe
flatten }
* -> *
Maybe
canClass
[WD] $dTypeable_aka2 {2}:: Typeable Maybe
Typeable Maybe
ContinueWith [WD] $dTypeable_aka2 {2}:: Typeable Maybe
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka2 {2}:: Typeable Maybe (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka2 {2}:: Typeable Maybe (CDictCan)
doTopReact [WD] $dTypeable_aka2 {2}:: Typeable Maybe (CDictCan)
addTcEvBind
ak9O
[W] $dTypeable_aka2 = $dTypeable_aka4
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak8g {0}:: Monad
m_ak8f[tau:1] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dTypeable_aka0 {1}:: Typeable
Int (CNonCanonical)
canonicalize (non-canonical)
[WD] $dTypeable_aka0 {1}:: Typeable Int (CNonCanonical)
canEvNC:cls Typeable [*, Int]
flatten_many {
*
Int
flatten }
*
Int
canClass
[WD] $dTypeable_aka0 {1}:: Typeable Int
Typeable Int
ContinueWith [WD] $dTypeable_aka0 {1}:: Typeable Int
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dTypeable_aka0 {1}:: Typeable Int (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dTypeable_aka0 {1}:: Typeable Int (CDictCan)
doTopReact [WD] $dTypeable_aka0 {1}:: Typeable Int (CDictCan)
matchClassInst pred = Typeable Int {
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dTypeable_aka0 {1}:: Typeable Int
updSolvedSetTcs: [WD] $dTypeable_aka0 {1}:: Typeable Int
addTcEvBind
ak9O
[W] $dTypeable_aka0 = TyCon Int :: Typeable Int
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak8g {0}:: Monad
m_ak8f[tau:1] (CNonCanonical)
inerts = {Dictionaries = [WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)
Unsolved goals = 1}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {}
runStage canonicalization {
workitem = [WD] $dMonad_ak8g {0}:: Monad
m_ak8f[tau:1] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1] (CNonCanonical)
canEvNC:cls Monad [m_ak8f[tau:1]]
flatten_many { m_ak8f[tau:1]
Following filled tyvar m_ak8f[tau:1] = IO
flatten } IO
canClass
[WD] $dMonad_ak8g {0}:: Monad m_ak8f[tau:1]
Monad IO
ContinueWith [WD] $dMonad_ak8g {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak8g {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak8g {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak8g {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak9O
[W] $dMonad_ak8g = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
getUnsolvedInerts
tv eqs = {}
fun eqs = {}
insols = {}
others = {[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)}
implics = {}
Unflattening
{Funeqs =
Tv eqs =}
Unflattening 1 {}
Unflattening 2 {}
Unflattening 3 {}
Unflattening done {}
zonkSimples done: {}
solveSimpleWanteds end }
iterations = 1
residual = WC {wc_simple =
[WD] $dIP_ak9Y {0}:: ?callStack::GHC.Stack.Types.CallStack (CDictCan)}
solveNestedImplications starting {
solveImplication {
Implic {
TcLevel = 2
Skolems = k1_ajUb[ssk:2]
(a_ajUc[ssk:2] :: k1_ajUb[ssk:2] -> k2_ajU9[tau:1])
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
No-eqs = False
Status = Unsolved
Given =
$d~_ajUe :: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])
Wanted =
WC {wc_simple =
[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2] (CNonCanonical)
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2] (CNonCanonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 3
Skolems = k1_ak7c[ssk:3]
(a_ak7d[ssk:3] :: k1_ak7c[ssk:3] -> k2_ak7a[tau:2])
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7f :: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4] -> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5] -> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8a>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8e>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }
Inerts {Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
solveSimpleGivens {
[[G] $d~_ajUe {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)]
-----------------------------
Start solver pipeline {
work item = [G] $d~_ajUe {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)
inerts = {Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] $d~_ajUe {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)
canonicalize (non-canonical)
[G] $d~_ajUe {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)
canEvNC:cls
~ [k2_ajU9[tau:1], t_ajUa[tau:1], a_ajUc[ssk:2] b_ajUd[ssk:2]]
addTcEvBind
ak8e
[G] $d~~_aka9 = sc(($d~_ajUe, 0))
mk_superclasses_of
~~ [k2_ajU9[tau:1], k2_ajU9[tau:1], t_ajUa[tau:1],
a_ajUc[ssk:2] b_ajUd[ssk:2]]
False
[31e :-> ~]
addTcEvBind
ak8e
[G] cobox_akaa = sc(($d~~_aka9, 0))
Emitting fresh work
[G] $d~~_aka9 {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CDictCan)
[G] cobox_akaa {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
GHC.Prim.~#
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)
flatten_many {
k2_ajU9[tau:1]
t_ajUa[tau:1]
a_ajUc[ssk:2] b_ajUd[ssk:2]
Following filled tyvar k2_ajU9[tau:1] = *
Following filled tyvar t_ajUa[tau:1] = ComposeK Maybe Maybe Int
Unfilled tyvar a_ajUc[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following filled tyvar k2_ajU9[tau:1] = *
Unfilled tyvar b_ajUd[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
flatten/appty
a_ajUc[ssk:2]
b_ajUd[ssk:2]
a_ajUc[ssk:2]
b_ajUd[ssk:2]
nominal
nominal
flatten }
*
ComposeK Maybe Maybe Int
a_ajUc[ssk:2] b_ajUd[ssk:2]
canClass
[G] $d~_ajUe {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])
(ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
ContinueWith [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
doTopReact
[G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
try_fundeps
[G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~_ajUe {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] $d~~_aka9 {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CDictCan)
inerts = {Dictionaries = [G] $d~_ajUe {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Eqs = [G] cobox_akaa {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
GHC.Prim.~#
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)}
runStage canonicalization {
workitem = [G] $d~~_aka9 {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CDictCan)
flatten_many {
k2_ajU9[tau:1]
k2_ajU9[tau:1]
t_ajUa[tau:1]
a_ajUc[ssk:2] b_ajUd[ssk:2]
Following filled tyvar k2_ajU9[tau:1] = *
Following filled tyvar k2_ajU9[tau:1] = *
Following filled tyvar t_ajUa[tau:1] = ComposeK Maybe Maybe Int
Unfilled tyvar a_ajUc[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following filled tyvar k2_ajU9[tau:1] = *
Unfilled tyvar b_ajUd[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
flatten/appty
a_ajUc[ssk:2]
b_ajUd[ssk:2]
a_ajUc[ssk:2]
b_ajUd[ssk:2]
nominal
nominal
flatten }
*
*
ComposeK Maybe Maybe Int
a_ajUc[ssk:2] b_ajUd[ssk:2]
canClass
[G] $d~~_aka9 {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])
(ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
ContinueWith [G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
doTopReact
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
try_fundeps
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~~_aka9 {0}:: (ComposeK
Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaa {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
GHC.Prim.~#
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)
inerts = {Dictionaries = [G] $d~_ajUe {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] cobox_akaa {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
GHC.Prim.~#
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaa {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
GHC.Prim.~#
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1]) (CNonCanonical)
canEvNC:eq
t_ajUa[tau:1]
a_ajUc[ssk:2] b_ajUd[ssk:2]
can_eq_nc
False
[G] cobox_akaa {0}:: (t_ajUa[tau:1] :: k2_ajU9[tau:1])
GHC.Prim.~#
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: k2_ajU9[tau:1])
nominal equality
ComposeK Maybe Maybe Int
t_ajUa[tau:1]
a_ajUc[ssk:2] b_ajUd[ssk:2]
a_ajUc[ssk:2] b_ajUd[ssk:2]
flatten { t_ajUa[tau:1]
Following filled tyvar t_ajUa[tau:1] = ComposeK Maybe Maybe Int
flatten } ComposeK Maybe Maybe Int
flatten { a_ajUc[ssk:2] b_ajUd[ssk:2]
Unfilled tyvar a_ajUc[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following filled tyvar k2_ajU9[tau:1] = *
Unfilled tyvar b_ajUd[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
flatten/appty
a_ajUc[ssk:2]
b_ajUd[ssk:2]
a_ajUc[ssk:2]
b_ajUd[ssk:2]
nominal
nominal
flatten } a_ajUc[ssk:2] b_ajUd[ssk:2]
addTcEvBind
ak8e
[G] cobox_akab = CO Left cobox_akaa
addTcEvBind
ak8e
[G] cobox_akac = CO Right cobox_akaa
Emitting fresh work
[G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
can_eq_nc
False
[G] cobox_akab {0}:: (ComposeK Maybe Maybe :: (* -> *))
GHC.Prim.~#
(a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
nominal equality
ComposeK Maybe Maybe
ComposeK Maybe Maybe
a_ajUc[ssk:2]
a_ajUc[ssk:2]
flatten { ComposeK Maybe Maybe
flatten } ComposeK Maybe Maybe
flatten { a_ajUc[ssk:2]
Unfilled tyvar a_ajUc[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
flatten } a_ajUc[ssk:2]
addTcEvBind
ak8e
[G] cobox_akad = CO Sym cobox_akab
addTcEvBind
ak8e
[G] cobox_akae = CO kind cobox_akad
Hetero equality gives rise to given kind equality
cobox_akae :: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
Emitting fresh work
[G] cobox_akae {1}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
addTcEvBind
ak8e
[G] cobox_akaf = CO Sym (Sym cobox_akad |> Sym cobox_akae)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Can't solve tyvar equality
LHS: a_ajUc[ssk:2] :: k1_ajUb[ssk:2] -> *
RHS: (ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: k1_ajUb[ssk:2] -> *
addInertEq {
Adding new inert equality: [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akae {1}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Eqs = [G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
Non-eqs = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akae {1}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akae {1}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ajUb[ssk:2] -> *
* -> *
can_eq_nc
False
[G] cobox_akae {1}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ajUb[ssk:2] -> *
k1_ajUb[ssk:2] -> *
* -> *
* -> *
canTyConApp
[G] cobox_akae {1}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, k1_ajUb[ssk:2], *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
addTcEvBind
ak8e
[G] cobox_akag = CO Nth:0 cobox_akae
addTcEvBind
ak8e
[G] cobox_akah = CO Nth:1 cobox_akae
addTcEvBind
ak8e
[G] cobox_akai = CO Nth:2 cobox_akae
addTcEvBind
ak8e
[G] cobox_akaj = CO Nth:3 cobox_akae
Emitting fresh work
[G] cobox_akag {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akah {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaj {1}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akag {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Eqs = [G] cobox_akah {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaj {1}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
Non-eqs = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akag {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akag {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akah {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Eqs = [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaj {1}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
Non-eqs = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akah {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akah {1}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Eqs = [G] cobox_akaj {1}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
Non-eqs = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canEvNC:eq
k1_ajUb[ssk:2]
*
can_eq_nc
False
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
nominal equality
k1_ajUb[ssk:2]
k1_ajUb[ssk:2]
*
*
flatten { k1_ajUb[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
flatten } k1_ajUb[ssk:2]
flatten { *
flatten } *
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
Can't solve tyvar equality
LHS: k1_ajUb[ssk:2] :: *
RHS: * :: *
addInertEq {
Adding new inert equality: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaj {1}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Eqs = [G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
Non-eqs = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaj {1}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaj {1}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [G] $d~_ajUe {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2]) (CNonCanonical)
canEvNC:eq
Int
b_ajUd[ssk:2]
can_eq_nc
False
[G] cobox_akac {0}:: (Int :: *)
GHC.Prim.~#
(b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
nominal equality
Int
Int
b_ajUd[ssk:2]
b_ajUd[ssk:2]
flatten { Int
flatten } Int
flatten { b_ajUd[ssk:2]
Unfilled tyvar b_ajUd[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten } (b_ajUd[ssk:2] |> cobox)
addTcEvBind
ak8e
[G] cobox_akak
= CO cobox_akac ; Sym (<b_ajUd[ssk:2]>_N |> cobox_akai)
Decomposing cast
[G] cobox_akak {1}:: (Int :: *)
GHC.Prim.~#
((b_ajUd[ssk:2] |> cobox) :: *)
b_ajUd[ssk:2] |> cobox_akai
Int
addTcEvBind
ak8e
[G] cobox_akal
= CO Sym (<b_ajUd[ssk:2]>_N |> cobox_akai) ; Sym cobox_akak
can_eq_nc
True
[G] cobox_akal {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
(Int :: *)
nominal equality
b_ajUd[ssk:2]
b_ajUd[ssk:2]
Int
Int
addTcEvBind
ak8e
[G] cobox_akam = CO kind cobox_akal
Hetero equality gives rise to given kind equality
cobox_akam :: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Emitting fresh work
[G] cobox_akam {2}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
addTcEvBind
ak8e
[G] cobox_akan = CO Sym (Sym cobox_akal |> Sym cobox_akam)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Can't solve tyvar equality
LHS: b_ajUd[ssk:2] :: k1_ajUb[ssk:2]
RHS: (Int |> Sym cobox) :: k1_ajUb[ssk:2]
addInertEq {
Adding new inert equality: [G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akam {2}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [G] $d~_ajUe {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akam {2}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akam {2}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canEvNC:eq
k1_ajUb[ssk:2]
*
can_eq_nc
False
[G] cobox_akam {2}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
nominal equality
k1_ajUb[ssk:2]
k1_ajUb[ssk:2]
*
*
flatten { k1_ajUb[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten } *
flatten { *
flatten } *
addTcEvBind
ak8e
[G] cobox_akao = CO Sym cobox_akai ; cobox_akam
canTyConApp
[G] cobox_akao {3}:: (* :: *) GHC.Prim.~# (* :: *)
nominal equality
TYPE
['GHC.Types.LiftedRep]
['GHC.Types.LiftedRep]
addTcEvBind
ak8e
[G] cobox_akap = CO <'GHC.Types.LiftedRep>_N
Emitting fresh work
[G] cobox_akap {3}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akap {3}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [G] $d~_ajUe {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akap {3}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akap {3}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [G] $d~~_aka9 {0}:: (ComposeK
Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)}
runStage canonicalization {
workitem = [G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
flatten_many {
*
ComposeK Maybe Maybe Int
a_ajUc[ssk:2] b_ajUd[ssk:2]
Unfilled tyvar a_ajUc[ssk:2]
Following inert tyvar
FM_FlattenAll a_ajUc[ssk:2] = (ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> <* -> *>_N -> Sym cobox_akae
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> <* -> *>_N -> Sym cobox_akae)
; Sym (<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox) Maybe
Maybe
ComposeK Maybe
Maybe
nominal
nominal
Unfilled tyvar b_ajUd[ssk:2]
Following inert tyvar
FM_FlattenAll b_ajUd[ssk:2] = (Int |> Sym cobox)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2])
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
Sym cobox_akam
<*>_N
Sym cobox_akai
Sym cobox_akam ; cobox_akai
flatten/appty
a_ajUc[ssk:2]
b_ajUd[ssk:2]
ComposeK Maybe Maybe
Int
nominal
nominal
flatten }
*
ComposeK Maybe Maybe Int
ComposeK Maybe Maybe Int
addTcEvBind
ak8e
[G] $d~_akaq
= $d~_ajUe `cast` (Sub
(Sym
((~)
<*>_N
<ComposeK Maybe Maybe Int>_N
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)
(Sym (<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)) <Maybe>_N <Maybe>_N)
(Sym cobox) (Trans
(Sym (Coh (Sym (Coh <Int>_N
(Trans (Sym cobox) cobox)))
(Sym cobox)))
(Sym cobox))))_N))
canClass
[G] $d~_ajUe {0}:: (ComposeK Maybe Maybe Int :: *)
~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
(ComposeK Maybe Maybe Int :: *) ~ (ComposeK Maybe Maybe Int :: *)
ContinueWith [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
doTopReact
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
try_fundeps
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~_akaq {0}:: (ComposeK
Maybe Maybe Int :: *)
~
(ComposeK
Maybe Maybe Int :: *) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *) (CDictCan)
flatten_many {
*
*
ComposeK Maybe Maybe Int
a_ajUc[ssk:2] b_ajUd[ssk:2]
Unfilled tyvar a_ajUc[ssk:2]
Following inert tyvar
FM_FlattenAll a_ajUc[ssk:2] = (ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> <* -> *>_N -> Sym cobox_akae
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> <* -> *>_N -> Sym cobox_akae)
; Sym (<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox) Maybe
Maybe
ComposeK Maybe
Maybe
nominal
nominal
Unfilled tyvar b_ajUd[ssk:2]
Following inert tyvar
FM_FlattenAll b_ajUd[ssk:2] = (Int |> Sym cobox)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2])
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
Sym cobox_akam
<*>_N
Sym cobox_akai
Sym cobox_akam ; cobox_akai
flatten/appty
a_ajUc[ssk:2]
b_ajUd[ssk:2]
ComposeK Maybe Maybe
Int
nominal
nominal
flatten }
*
*
ComposeK Maybe Maybe Int
ComposeK Maybe Maybe Int
addTcEvBind
ak8e
[G] $d~~_akar
= $d~~_aka9 `cast` (Sub
(Sym
((~~)
<*>_N
<*>_N
<ComposeK Maybe Maybe Int>_N
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)
(Sym (<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)) <Maybe>_N <Maybe>_N)
(Sym cobox) (Trans
(Sym (Coh (Sym (Coh <Int>_N
(Trans
(Sym cobox) cobox)))
(Sym cobox)))
(Sym cobox))))_N))
canClass
[G] $d~~_aka9 {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(a_ajUc[ssk:2] b_ajUd[ssk:2] :: *)
(ComposeK Maybe Maybe Int :: *) ~~ (ComposeK Maybe Maybe Int :: *)
ContinueWith [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
doTopReact
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
try_fundeps
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~~_akar {0}:: (ComposeK
Maybe Maybe Int :: *)
~~
(ComposeK
Maybe Maybe Int :: *) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
End solveSimpleGivens }
solveWanteds {
WC {wc_simple =
[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2] (CNonCanonical)
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2] (CNonCanonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 3
Skolems = k1_ak7c[ssk:3]
(a_ak7d[ssk:3] :: k1_ak7c[ssk:3] -> k2_ak7a[tau:2])
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7f :: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4] -> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5] -> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8a>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
solveSimpleWanteds {
{[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2] (CNonCanonical),
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2] (CNonCanonical),
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical),
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical),
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)}
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ajUi {0}:: Monad
m_ajUh[tau:2] (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [WD] $dShow_ak70 {0}:: Show
a_ak6Z[tau:2] (CNonCanonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dMonad_ajUi {0}:: Monad
m_ajUh[tau:2] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2] (CNonCanonical)
canEvNC:cls Monad [m_ajUh[tau:2]]
flatten_many { m_ajUh[tau:2]
Following filled tyvar m_ajUh[tau:2] = IO
flatten } IO
canClass
[WD] $dMonad_ajUi {0}:: Monad m_ajUh[tau:2]
Monad IO
ContinueWith [WD] $dMonad_ajUi {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ajUi {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ajUi {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ajUi {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak8e
[W] $dMonad_ajUi = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_ak70 {0}:: Show
a_ak6Z[tau:2] (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak74 {0}:: Monad
m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_ak70 {0}:: Show
a_ak6Z[tau:2] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2] (CNonCanonical)
canEvNC:cls Show [a_ak6Z[tau:2]]
flatten_many { a_ak6Z[tau:2]
Following filled tyvar
a_ak6Z[tau:2] = (a_ak71[tau:2], b_ak72[tau:2])
Following filled tyvar a_ak71[tau:2] = TypeRep a_ajUc[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar a_ajUc[ssk:2]
Following inert tyvar
FM_FlattenAll a_ajUc[ssk:2] = (ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> <* -> *>_N -> Sym cobox_akae
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> <* -> *>_N -> Sym cobox_akae)
; Sym (<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox) Maybe
Maybe
ComposeK Maybe
Maybe
nominal
nominal
Following filled tyvar b_ak72[tau:2] = TypeRep b_ajUd[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ajUd[ssk:2]
Following inert tyvar
FM_FlattenAll b_ajUd[ssk:2] = (Int |> Sym cobox)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2])
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
Sym cobox_akam
<*>_N
Sym cobox_akai
Sym cobox_akam ; cobox_akai
flatten } (TypeRep (ComposeK Maybe Maybe), TypeRep Int)
Emitting new wanted
$dShow_akas :: Show (TypeRep (ComposeK Maybe Maybe), TypeRep Int)
arising from a use of ‘print’ at Typeable1.hs:14:5-16
addTcEvBind
ak8e
[W] $dShow_ak70
= $dShow_akas `cast` (Show
((,)
(TypeRep
(Sym cobox ->_N <*>_N)
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)
(Sym (<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)) <Maybe>_N <Maybe>_N)
(Sym cobox)))_N
(TypeRep
(Sym cobox)
(Trans
(Sym (Coh (Sym (Coh <Int>_N (Trans (Sym cobox) cobox)))
(Sym cobox)))
(Sym cobox)))_N)_N)_R
canClass
[WD] $dShow_ak70 {0}:: Show a_ak6Z[tau:2]
Show (TypeRep (ComposeK Maybe Maybe), TypeRep Int)
ContinueWith [WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int) (CDictCan)
doTopReact
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int) (CDictCan)
matchClassInst
pred = Show (TypeRep (ComposeK Maybe Maybe), TypeRep Int) {
matchClass success
dict Show (TypeRep (ComposeK Maybe Maybe), TypeRep Int)
witness GHC.Show.$fShow(,) forall a b.
(Show a, Show b) =>
Show (a, b)
} matchClassInst result
GenInst [Show (TypeRep (ComposeK Maybe Maybe)), Show (TypeRep Int)]
[safe]
doTopReact/found instance for
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
updSolvedSetTcs:
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
Emitting new wanted
$dShow_akav :: Show (TypeRep (ComposeK Maybe Maybe))
arising from a use of ‘print’ at Typeable1.hs:14:5-16
Emitting new wanted
$dShow_akaw :: Show (TypeRep Int)
arising from a use of ‘print’ at Typeable1.hs:14:5-16
addTcEvBind
ak8e
[W] $dShow_akas
= GHC.Show.$fShow(,) @[TypeRep (ComposeK Maybe Maybe), TypeRep Int]
[$dShow_akav, $dShow_akaw]
Emitting fresh work
[WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe)) (CNonCanonical)
[WD] $dShow_akaw {1}:: Show (TypeRep Int) (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe)) (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dShow_akaw {1}:: Show
(TypeRep Int) (CNonCanonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe)) (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe)) (CNonCanonical)
canEvNC:cls Show [TypeRep (ComposeK Maybe Maybe)]
flatten_many { TypeRep (ComposeK Maybe Maybe)
flatten } TypeRep (ComposeK Maybe Maybe)
canClass
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
Show (TypeRep (ComposeK Maybe Maybe))
ContinueWith [WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe))
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe)) (CDictCan)
doTopReact
[WD] $dShow_akav {1}:: Show
(TypeRep (ComposeK Maybe Maybe)) (CDictCan)
matchClassInst pred = Show (TypeRep (ComposeK Maybe Maybe)) {
matchClass success
dict Show (TypeRep (ComposeK Maybe Maybe))
witness base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep forall k (a :: k).
Show (TypeRep a)
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
updSolvedSetTcs:
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
addTcEvBind
ak8e
[W] $dShow_akav
= base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep @[* -> *,
ComposeK Maybe Maybe]
[]
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_akaw {1}:: Show
(TypeRep Int) (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak74 {0}:: Monad
m_ak73[tau:2] (CNonCanonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_akaw {1}:: Show
(TypeRep Int) (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_akaw {1}:: Show (TypeRep Int) (CNonCanonical)
canEvNC:cls Show [TypeRep Int]
flatten_many { TypeRep Int
flatten } TypeRep Int
canClass
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
Show (TypeRep Int)
ContinueWith [WD] $dShow_akaw {1}:: Show (TypeRep Int)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akaw {1}:: Show (TypeRep Int) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akaw {1}:: Show (TypeRep Int) (CDictCan)
doTopReact [WD] $dShow_akaw {1}:: Show (TypeRep Int) (CDictCan)
matchClassInst pred = Show (TypeRep Int) {
matchClass success
dict Show (TypeRep Int)
witness base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep forall k (a :: k).
Show (TypeRep a)
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
updSolvedSetTcs: [WD] $dShow_akaw {1}:: Show (TypeRep Int)
addTcEvBind
ak8e
[W] $dShow_akaw
= base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep @[*, Int] []
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak74 {0}:: Monad
m_ak73[tau:2] (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dMonad_ak74 {0}:: Monad
m_ak73[tau:2] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2] (CNonCanonical)
canEvNC:cls Monad [m_ak73[tau:2]]
flatten_many { m_ak73[tau:2]
Following filled tyvar m_ak73[tau:2] = IO
flatten } IO
canClass
[WD] $dMonad_ak74 {0}:: Monad m_ak73[tau:2]
Monad IO
ContinueWith [WD] $dMonad_ak74 {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak74 {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak74 {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak74 {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak8e
[W] $dMonad_ak74 = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak8c {0}:: Monad
m_ak8b[tau:2] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dApplicative_ak78 {0}:: Applicative
f_ak77[tau:2] (CNonCanonical)
canEvNC:cls Applicative [f_ak77[tau:2]]
flatten_many { f_ak77[tau:2]
Following filled tyvar f_ak77[tau:2] = IO
flatten } IO
canClass
[WD] $dApplicative_ak78 {0}:: Applicative f_ak77[tau:2]
Applicative IO
ContinueWith [WD] $dApplicative_ak78 {0}:: Applicative IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dApplicative_ak78 {0}:: Applicative
IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dApplicative_ak78 {0}:: Applicative
IO (CDictCan(psc))
doTopReact
[WD] $dApplicative_ak78 {0}:: Applicative IO (CDictCan(psc))
addTcEvBind
ak8e
[W] $dApplicative_ak78 = $dApplicative_ajMU
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak8c {0}:: Monad
m_ak8b[tau:2] (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [WD] $dMonad_ak8c {0}:: Monad
m_ak8b[tau:2] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2] (CNonCanonical)
canEvNC:cls Monad [m_ak8b[tau:2]]
flatten_many { m_ak8b[tau:2]
Following filled tyvar m_ak8b[tau:2] = IO
flatten } IO
canClass
[WD] $dMonad_ak8c {0}:: Monad m_ak8b[tau:2]
Monad IO
ContinueWith [WD] $dMonad_ak8c {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak8c {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak8c {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak8c {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak8e
[W] $dMonad_ak8c = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
getUnsolvedInerts
tv eqs = {}
fun eqs = {}
insols = {}
others = {}
implics = {}
Unflattening
{Funeqs =
Tv eqs =}
Unflattening 1 {}
Unflattening 2 {}
Unflattening 3 {}
Unflattening done {}
zonkSimples done: {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveNestedImplications starting {
solveImplication {
Implic {
TcLevel = 3
Skolems = k1_ak7c[ssk:3]
(a_ak7d[ssk:3] :: k1_ak7c[ssk:3] -> k2_ak7a[tau:2])
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7f :: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4] -> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5] -> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak8a>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }
Inerts {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
solveSimpleGivens {
[[G] $d~_ak7f {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)]
-----------------------------
Start solver pipeline {
work item = [G] $d~_ak7f {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] $d~_ak7f {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)
canonicalize (non-canonical)
[G] $d~_ak7f {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)
canEvNC:cls
~ [k2_ak7a[tau:2], t_ak7b[tau:2], a_ak7d[ssk:3] b_ak7e[ssk:3]]
addTcEvBind
ak8a
[G] $d~~_akaz = sc(($d~_ak7f, 0))
mk_superclasses_of
~~ [k2_ak7a[tau:2], k2_ak7a[tau:2], t_ak7b[tau:2],
a_ak7d[ssk:3] b_ak7e[ssk:3]]
False
[31e :-> ~]
addTcEvBind
ak8a
[G] cobox_akaA = sc(($d~~_akaz, 0))
Emitting fresh work
[G] $d~~_akaz {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CDictCan)
[G] cobox_akaA {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
GHC.Prim.~#
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)
flatten_many {
k2_ak7a[tau:2]
t_ak7b[tau:2]
a_ak7d[ssk:3] b_ak7e[ssk:3]
Following filled tyvar k2_ak7a[tau:2] = k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Following filled tyvar t_ak7b[tau:2] = a_ajUc[ssk:2]
Unfilled tyvar a_ajUc[ssk:2]
Following inert tyvar
FM_FlattenAll a_ajUc[ssk:2] = (ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> <* -> *>_N -> Sym cobox_akae
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> <* -> *>_N -> Sym cobox_akae)
; Sym (<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox) Maybe
Maybe
ComposeK Maybe
Maybe
nominal
nominal
Unfilled tyvar a_ak7d[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following filled tyvar k2_ak7a[tau:2] = k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ak7e[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
flatten/appty
a_ak7d[ssk:3]
b_ak7e[ssk:3]
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
b_ak7e[ssk:3]
nominal
nominal
flatten }
* -> *
ComposeK Maybe Maybe
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3]
addTcEvBind
ak8a
[G] $d~_akaB
= $d~_ak7f `cast` (Sub
(Sym
((~)
(Sym cobox ->_N <*>_N)
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)
(Sym (<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)) <Maybe>_N <Maybe>_N)
(Sym cobox))
(Coh <a_ak7d[ssk:3]>_N
(Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) <b_ak7e[ssk:3]>_N))_N))
canClass
[G] $d~_ak7f {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
(ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
ContinueWith [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
doTopReact
[G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *)) (CDictCan)
try_fundeps
[G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~_akaB {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] $d~~_akaz {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CDictCan)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaA {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
GHC.Prim.~#
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)}
runStage canonicalization {
workitem = [G] $d~~_akaz {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CDictCan)
flatten_many {
k2_ak7a[tau:2]
k2_ak7a[tau:2]
t_ak7b[tau:2]
a_ak7d[ssk:3] b_ak7e[ssk:3]
Following filled tyvar k2_ak7a[tau:2] = k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Following filled tyvar k2_ak7a[tau:2] = k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Following filled tyvar t_ak7b[tau:2] = a_ajUc[ssk:2]
Unfilled tyvar a_ajUc[ssk:2]
Following inert tyvar
FM_FlattenAll a_ajUc[ssk:2] = (ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> <* -> *>_N -> Sym cobox_akae
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> <* -> *>_N -> Sym cobox_akae)
; Sym (<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox) Maybe
Maybe
ComposeK Maybe
Maybe
nominal
nominal
Unfilled tyvar a_ak7d[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following filled tyvar k2_ak7a[tau:2] = k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ak7e[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
flatten/appty
a_ak7d[ssk:3]
b_ak7e[ssk:3]
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
b_ak7e[ssk:3]
nominal
nominal
flatten }
* -> *
* -> *
ComposeK Maybe Maybe
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3]
addTcEvBind
ak8a
[G] $d~~_akaC
= $d~~_akaz `cast` (Sub
(Sym
((~~)
(Sym cobox ->_N <*>_N)
(Sym cobox ->_N <*>_N)
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)
(Sym (<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N
->_N <* -> *>_N
->_N Sym cobox)) <Maybe>_N <Maybe>_N)
(Sym cobox))
(Coh <a_ak7d[ssk:3]>_N
(Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) <b_ak7e[ssk:3]>_N))_N))
canClass
[G] $d~~_akaz {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
~~
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
(ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
ContinueWith [G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
doTopReact
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *)) (CDictCan)
try_fundeps
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~~_akaC {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaA {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
GHC.Prim.~#
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
Dictionaries = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] cobox_akaA {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
GHC.Prim.~#
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaA {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
GHC.Prim.~#
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2]) (CNonCanonical)
canEvNC:eq
t_ak7b[tau:2]
a_ak7d[ssk:3] b_ak7e[ssk:3]
can_eq_nc
False
[G] cobox_akaA {0}:: (t_ak7b[tau:2] :: k2_ak7a[tau:2])
GHC.Prim.~#
(a_ak7d[ssk:3] b_ak7e[ssk:3] :: k2_ak7a[tau:2])
nominal equality
a_ajUc[ssk:2]
t_ak7b[tau:2]
a_ak7d[ssk:3] b_ak7e[ssk:3]
a_ak7d[ssk:3] b_ak7e[ssk:3]
flatten { t_ak7b[tau:2]
Following filled tyvar t_ak7b[tau:2] = a_ajUc[ssk:2]
Unfilled tyvar a_ajUc[ssk:2]
Following inert tyvar
FM_FlattenAll a_ajUc[ssk:2] = (ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> <* -> *>_N -> Sym cobox_akae
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> <* -> *>_N -> Sym cobox_akae)
; Sym (<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
flatten/appty
(ComposeK |> <* -> *>_N ->_N <* -> *>_N ->_N Sym cobox) Maybe
Maybe
ComposeK Maybe
Maybe
nominal
nominal
flatten } ComposeK Maybe Maybe
flatten { a_ak7d[ssk:3] b_ak7e[ssk:3]
Unfilled tyvar a_ak7d[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following filled tyvar k2_ak7a[tau:2] = k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ak7e[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
flatten/appty
a_ak7d[ssk:3]
b_ak7e[ssk:3]
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
b_ak7e[ssk:3]
nominal
nominal
flatten }
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3]
addTcEvBind
ak8a
[G] cobox_akaD
= CO Sym
(Sym
(<ComposeK>_N |> ((<* -> *>_N -> <* -> *>_N -> Sym cobox_akae)
; Sym
(<* -> *>_N -> <* -> *>_N -> Sym cobox_akai -> <*>_N))) |> (<*
-> *>_N
-> <*
-> *>_N
-> Sym
cobox_akae)) <Maybe>_N <Maybe>_N
; Sym cobox_akaf
; cobox_akaA
; Sym
(<a_ak7d[ssk:3]>_N |> Sym
(<k1_ak7c[ssk:3]>_N
-> Sym cobox_akai -> <*>_N) <b_ak7e[ssk:3]>_N)
addTcEvBind
ak8a
[G] cobox_akaE = CO Left cobox_akaD
addTcEvBind
ak8a
[G] cobox_akaF = CO Right cobox_akaD
Emitting fresh work
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
can_eq_nc
False
[G] cobox_akaE {1}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
GHC.Prim.~#
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) :: (k1_ak7c[ssk:3] -> * -> *))
nominal equality
ComposeK Maybe
ComposeK Maybe
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
Decomposing cast
[G] cobox_akaE {1}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
GHC.Prim.~#
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) :: (k1_ak7c[ssk:3] -> * -> *))
a_ak7d[ssk:3] |> Sym
(<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N)
ComposeK Maybe
addTcEvBind
ak8a
[G] cobox_akaG
= CO Sym
(<a_ak7d[ssk:3]>_N |> Sym
(<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N))
; Sym cobox_akaE
can_eq_nc
False
[G] cobox_akaG {2}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
(ComposeK Maybe :: ((* -> *) -> * -> *))
nominal equality
a_ak7d[ssk:3]
a_ak7d[ssk:3]
ComposeK Maybe
ComposeK Maybe
flatten { a_ak7d[ssk:3]
Unfilled tyvar a_ak7d[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten }
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
flatten { ComposeK Maybe
flatten } ComposeK Maybe
addTcEvBind
ak8a
[G] cobox_akaH
= CO <a_ak7d[ssk:3]>_N |> Sym
(<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N)
; cobox_akaG
Decomposing cast
[G] cobox_akaH {3}:: ((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) :: (k1_ak7c[ssk:3] -> * -> *))
GHC.Prim.~#
(ComposeK Maybe :: ((* -> *) -> * -> *))
a_ak7d[ssk:3] |> Sym
(<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N)
ComposeK Maybe
addTcEvBind
ak8a
[G] cobox_akaI
= CO Sym
(<a_ak7d[ssk:3]>_N |> Sym
(<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N))
; cobox_akaH
can_eq_nc
True
[G] cobox_akaI {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
(ComposeK Maybe :: ((* -> *) -> * -> *))
nominal equality
a_ak7d[ssk:3]
a_ak7d[ssk:3]
ComposeK Maybe
ComposeK Maybe
addTcEvBind
ak8a
[G] cobox_akaJ = CO kind cobox_akaI
Hetero equality gives rise to given kind equality
cobox_akaJ :: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *)
Emitting fresh work
[G] cobox_akaJ {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
addTcEvBind
ak8a
[G] cobox_akaK = CO Sym (Sym cobox_akaI |> Sym cobox_akaJ)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Can't solve tyvar equality
LHS: a_ak7d[ssk:3] :: k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
RHS: (ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
addInertEq {
Adding new inert equality: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaJ {4}:: ((k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaF {1}:: (Maybe :: (*
-> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaJ {4}:: ((k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaJ {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
(* -> *) -> * -> *
can_eq_nc
False
[G] cobox_akaJ {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *)
nominal equality
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
(* -> *) -> * -> *
(* -> *) -> * -> *
canTyConApp
[G] cobox_akaJ {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, k1_ak7c[ssk:3],
k1_ajUb[ssk:2] -> *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, * -> *, * -> *]
addTcEvBind
ak8a
[G] cobox_akaL = CO Nth:0 cobox_akaJ
addTcEvBind
ak8a
[G] cobox_akaM = CO Nth:1 cobox_akaJ
addTcEvBind
ak8a
[G] cobox_akaN = CO Nth:2 cobox_akaJ
addTcEvBind
ak8a
[G] cobox_akaO = CO Nth:3 cobox_akaJ
Emitting fresh work
[G] cobox_akaL {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akaM {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaL {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaM {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaL {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaL {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaM {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaM {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaM {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaO {4}:: ((k1_ajUb[ssk:2]
-> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7c[ssk:3]
* -> *
can_eq_nc
False
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ak7c[ssk:3]
k1_ak7c[ssk:3]
* -> *
* -> *
flatten { k1_ak7c[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
flatten } k1_ak7c[ssk:3]
flatten { * -> *
flatten } * -> *
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Can't solve tyvar equality
LHS: k1_ak7c[ssk:3] :: *
RHS: * -> * :: *
addInertEq {
Adding new inert equality: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaF {1}:: (Maybe :: (*
-> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ajUb[ssk:2] -> *
* -> *
can_eq_nc
False
[G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ajUb[ssk:2] -> *
k1_ajUb[ssk:2] -> *
* -> *
* -> *
canTyConApp
[G] cobox_akaO {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, k1_ajUb[ssk:2], *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
addTcEvBind
ak8a
[G] cobox_akaP = CO Nth:0 cobox_akaO
addTcEvBind
ak8a
[G] cobox_akaQ = CO Nth:1 cobox_akaO
addTcEvBind
ak8a
[G] cobox_akaR = CO Nth:2 cobox_akaO
addTcEvBind
ak8a
[G] cobox_akaS = CO Nth:3 cobox_akaO
Emitting fresh work
[G] cobox_akaP {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akaQ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akaR {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaS {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaP {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaQ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akaR {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaS {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaP {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaP {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaQ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaR {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaS {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaQ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaQ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaR {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaS {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaR {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaR {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canEvNC:eq
k1_ajUb[ssk:2]
*
can_eq_nc
False
[G] cobox_akaR {4}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
nominal equality
k1_ajUb[ssk:2]
k1_ajUb[ssk:2]
*
*
flatten { k1_ajUb[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten } *
flatten { *
flatten } *
addTcEvBind
ak8a
[G] cobox_akaT = CO Sym cobox_akai ; cobox_akaR
canTyConApp
[G] cobox_akaT {5}:: (* :: *) GHC.Prim.~# (* :: *)
nominal equality
TYPE
['GHC.Types.LiftedRep]
['GHC.Types.LiftedRep]
addTcEvBind
ak8a
[G] cobox_akaU = CO <'GHC.Types.LiftedRep>_N
Emitting fresh work
[G] cobox_akaU {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaU {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaS {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaU {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaU {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaS {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akaF {1}:: (Maybe :: (*
-> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaS {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaS {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~_akaB {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3]) (CNonCanonical)
canEvNC:eq
Maybe
b_ak7e[ssk:3]
can_eq_nc
False
[G] cobox_akaF {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
nominal equality
Maybe
Maybe
b_ak7e[ssk:3]
b_ak7e[ssk:3]
flatten { Maybe
flatten } Maybe
flatten { b_ak7e[ssk:3]
Unfilled tyvar b_ak7e[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_SubstOnly k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten } (b_ak7e[ssk:3] |> cobox)
addTcEvBind
ak8a
[G] cobox_akaV
= CO cobox_akaF ; Sym (<b_ak7e[ssk:3]>_N |> cobox_akaN)
Decomposing cast
[G] cobox_akaV {2}:: (Maybe :: (* -> *))
GHC.Prim.~#
((b_ak7e[ssk:3] |> cobox) :: (* -> *))
b_ak7e[ssk:3] |> cobox_akaN
Maybe
addTcEvBind
ak8a
[G] cobox_akaW
= CO Sym (<b_ak7e[ssk:3]>_N |> cobox_akaN) ; Sym cobox_akaV
can_eq_nc
True
[G] cobox_akaW {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
(Maybe :: (* -> *))
nominal equality
b_ak7e[ssk:3]
b_ak7e[ssk:3]
Maybe
Maybe
addTcEvBind
ak8a
[G] cobox_akaX = CO kind cobox_akaW
Hetero equality gives rise to given kind equality
cobox_akaX :: (k1_ak7c[ssk:3] :: *) GHC.Prim.~# ((* -> *) :: *)
Emitting fresh work
[G] cobox_akaX {3}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
addTcEvBind
ak8a
[G] cobox_akaY = CO Sym (Sym cobox_akaW |> Sym cobox_akaX)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Can't solve tyvar equality
LHS: b_ak7e[ssk:3] :: k1_ak7c[ssk:3]
RHS: (Maybe |> Sym cobox) :: k1_ak7c[ssk:3]
addInertEq {
Adding new inert equality: [G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akaX {3}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~_akaB {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akaX {3}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akaX {3}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7c[ssk:3]
* -> *
can_eq_nc
False
[G] cobox_akaX {3}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ak7c[ssk:3]
k1_ak7c[ssk:3]
* -> *
* -> *
flatten { k1_ak7c[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten } * -> *
flatten { * -> *
flatten } * -> *
addTcEvBind
ak8a
[G] cobox_akaZ = CO Sym cobox_akaN ; cobox_akaX
canTyConApp
[G] cobox_akaZ {4}:: ((* -> *) :: *) GHC.Prim.~# ((* -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
addTcEvBind
ak8a
[G] cobox_akb0 = CO <'GHC.Types.LiftedRep>_N
addTcEvBind
ak8a
[G] cobox_akb1 = CO <'GHC.Types.LiftedRep>_N
addTcEvBind
ak8a
[G] cobox_akb2 = CO <*>_N
addTcEvBind
ak8a
[G] cobox_akb3 = CO <*>_N
Emitting fresh work
[G] cobox_akb0 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akb1 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akb2 {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akb3 {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akb0 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akb1 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akb2 {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akb3 {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akb0 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akb0 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akb1 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akb2 {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akb3 {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akb1 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akb1 {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akb2 {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akb3 {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
Non-eqs = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akb2 {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akb2 {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akb3 {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~_akaB {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akb3 {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akb3 {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~~_akaC {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
flatten_many {
* -> *
ComposeK Maybe Maybe
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3]
Unfilled tyvar a_ak7d[ssk:3]
Following inert tyvar
FM_FlattenAll a_ak7d[ssk:3] = (ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N ->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> Sym cobox_akaJ
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> Sym cobox_akaJ)
; Sym (<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym (<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N)
Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akaN -> <* -> *>_N
(Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
; Sym (<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N)
; Sym (Sym cobox_akaN -> <* -> *>_N)
Unfilled tyvar b_ak7e[ssk:3]
Following inert tyvar
FM_FlattenAll b_ak7e[ssk:3] = (Maybe |> Sym cobox)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3])
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym cobox_akaX
<* -> *>_N
Sym cobox_akaN
Sym cobox_akaX ; cobox_akaN
flatten/appty
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
b_ak7e[ssk:3]
ComposeK Maybe
Maybe
nominal
nominal
flatten }
* -> *
ComposeK Maybe Maybe
ComposeK Maybe Maybe
addTcEvBind
ak8a
[G] $d~_akb4
= $d~_akaB `cast` (Sub
(Sym
((~)
<* -> *>_N
<ComposeK Maybe Maybe>_N
(Sym (Coh (Sym (Coh (Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N
->_N Sym cobox)
(Sym (<* -> *>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N
->_N Sym cobox)) <Maybe>_N)
(Sym cobox))
(Trans
(Trans
(Sym cobox ->_N Sym cobox ->_N <*>_N)
(Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)))
(Sym (Sym cobox ->_N <* -> *>_N)))))
(Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))) (Trans
(Sym (Coh (Sym (Coh <Maybe>_N
(Trans
(Sym cobox)
cobox)))
(Sym cobox)))
(Sym cobox))))_N))
canClass
[G] $d~_akaB {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
(ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *))
ContinueWith [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
doTopReact
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
try_fundeps
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~_akb4 {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (*
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (*
-> *)) (CDictCan)
flatten_many {
* -> *
* -> *
ComposeK Maybe Maybe
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3]
Unfilled tyvar a_ak7d[ssk:3]
Following inert tyvar
FM_FlattenAll a_ak7d[ssk:3] = (ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N ->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> Sym cobox_akaJ
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> Sym cobox_akaJ)
; Sym (<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym (<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N)
Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akaN -> <* -> *>_N
(Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
; Sym (<k1_ak7c[ssk:3]>_N -> Sym cobox_akai -> <*>_N)
; Sym (Sym cobox_akaN -> <* -> *>_N)
Unfilled tyvar b_ak7e[ssk:3]
Following inert tyvar
FM_FlattenAll b_ak7e[ssk:3] = (Maybe |> Sym cobox)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3])
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym cobox_akaX
<* -> *>_N
Sym cobox_akaN
Sym cobox_akaX ; cobox_akaN
flatten/appty
(a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))
b_ak7e[ssk:3]
ComposeK Maybe
Maybe
nominal
nominal
flatten }
* -> *
* -> *
ComposeK Maybe Maybe
ComposeK Maybe Maybe
addTcEvBind
ak8a
[G] $d~~_akb5
= $d~~_akaC `cast` (Sub
(Sym
((~~)
<* -> *>_N
<* -> *>_N
<ComposeK Maybe Maybe>_N
(Sym (Coh (Sym (Coh (Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N
->_N Sym cobox)
(Sym (<* -> *>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N
->_N Sym cobox)) <Maybe>_N)
(Sym cobox))
(Trans
(Trans
(Sym cobox ->_N Sym cobox ->_N <*>_N)
(Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)))
(Sym (Sym cobox ->_N <* -> *>_N)))))
(Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N))) (Trans
(Sym (Coh (Sym (Coh <Maybe>_N
(Trans
(Sym cobox)
cobox)))
(Sym cobox)))
(Sym cobox))))_N))
canClass
[G] $d~~_akaC {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
((a_ak7d[ssk:3] |> Sym (<k1_ak7c[ssk:3]>_N
->_N Sym cobox
->_N <*>_N)) b_ak7e[ssk:3] :: (* -> *))
(ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *))
ContinueWith [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
doTopReact
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
try_fundeps
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~~_akb5 {0}:: (ComposeK
Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (*
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
End solveSimpleGivens }
solveWanteds {
WC {wc_simple =
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4] -> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5] -> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
solveSimpleWanteds {
{[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical),
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical),
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical),
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical),
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)}
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak7h {0}:: Monad
m_ak7g[tau:3] (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dShow_ak7l {0}:: Show
a_ak7k[tau:3] (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dMonad_ak7h {0}:: Monad
m_ak7g[tau:3] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3] (CNonCanonical)
canEvNC:cls Monad [m_ak7g[tau:3]]
flatten_many { m_ak7g[tau:3]
Following filled tyvar m_ak7g[tau:3] = IO
flatten } IO
canClass
[WD] $dMonad_ak7h {0}:: Monad m_ak7g[tau:3]
Monad IO
ContinueWith [WD] $dMonad_ak7h {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak7h {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak7h {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak7h {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak8a
[W] $dMonad_ak7h = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_ak7l {0}:: Show
a_ak7k[tau:3] (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak7p {0}:: Monad
m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_ak7l {0}:: Show
a_ak7k[tau:3] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3] (CNonCanonical)
canEvNC:cls Show [a_ak7k[tau:3]]
flatten_many { a_ak7k[tau:3]
Following filled tyvar
a_ak7k[tau:3] = (a_ak7m[tau:3], b_ak7n[tau:3])
Following filled tyvar a_ak7m[tau:3] = TypeRep a_ak7d[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar a_ak7d[ssk:3]
Following inert tyvar
FM_FlattenAll a_ak7d[ssk:3] = (ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N ->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> Sym cobox_akaJ
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> Sym cobox_akaJ)
; Sym (<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
Following filled tyvar b_ak7n[tau:3] = TypeRep b_ak7e[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar b_ak7e[ssk:3]
Following inert tyvar
FM_FlattenAll b_ak7e[ssk:3] = (Maybe |> Sym cobox)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3])
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym cobox_akaX
<* -> *>_N
Sym cobox_akaN
Sym cobox_akaX ; cobox_akaN
flatten } (TypeRep (ComposeK Maybe), TypeRep Maybe)
Emitting new wanted
$dShow_akb6 :: Show (TypeRep (ComposeK Maybe), TypeRep Maybe)
arising from a use of ‘print’ at Typeable1.hs:17:5-16
addTcEvBind
ak8a
[W] $dShow_ak7l
= $dShow_akb6 `cast` (Show
((,)
(TypeRep
(Sym cobox ->_N Sym cobox ->_N <*>_N)
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N ->_N Sym cobox)
(Sym (<* -> *>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N ->_N Sym cobox)) <Maybe>_N)
(Sym cobox)))_N
(TypeRep
(Sym cobox)
(Trans
(Sym (Coh (Sym (Coh <Maybe>_N (Trans (Sym cobox) cobox)))
(Sym cobox)))
(Sym cobox)))_N)_N)_R
canClass
[WD] $dShow_ak7l {0}:: Show a_ak7k[tau:3]
Show (TypeRep (ComposeK Maybe), TypeRep Maybe)
ContinueWith [WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe) (CDictCan)
doTopReact
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe) (CDictCan)
matchClassInst
pred = Show (TypeRep (ComposeK Maybe), TypeRep Maybe) {
matchClass success
dict Show (TypeRep (ComposeK Maybe), TypeRep Maybe)
witness GHC.Show.$fShow(,) forall a b.
(Show a, Show b) =>
Show (a, b)
} matchClassInst result
GenInst [Show (TypeRep (ComposeK Maybe)), Show (TypeRep Maybe)]
[safe]
doTopReact/found instance for
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
updSolvedSetTcs:
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
Emitting new wanted
$dShow_akb7 :: Show (TypeRep (ComposeK Maybe))
arising from a use of ‘print’ at Typeable1.hs:17:5-16
Emitting new wanted
$dShow_akb8 :: Show (TypeRep Maybe)
arising from a use of ‘print’ at Typeable1.hs:17:5-16
addTcEvBind
ak8a
[W] $dShow_akb6
= GHC.Show.$fShow(,) @[TypeRep (ComposeK Maybe), TypeRep Maybe]
[$dShow_akb7, $dShow_akb8]
Emitting fresh work
[WD] $dShow_akb7 {1}:: Show
(TypeRep (ComposeK Maybe)) (CNonCanonical)
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe) (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_akb7 {1}:: Show
(TypeRep (ComposeK Maybe)) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dShow_akb8 {1}:: Show
(TypeRep Maybe) (CNonCanonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_akb7 {1}:: Show
(TypeRep (ComposeK Maybe)) (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_akb7 {1}:: Show
(TypeRep (ComposeK Maybe)) (CNonCanonical)
canEvNC:cls Show [TypeRep (ComposeK Maybe)]
flatten_many { TypeRep (ComposeK Maybe)
flatten } TypeRep (ComposeK Maybe)
canClass
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
Show (TypeRep (ComposeK Maybe))
ContinueWith [WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akb7 {1}:: Show
(TypeRep (ComposeK Maybe)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akb7 {1}:: Show
(TypeRep (ComposeK Maybe)) (CDictCan)
doTopReact
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe)) (CDictCan)
matchClassInst pred = Show (TypeRep (ComposeK Maybe)) {
matchClass success
dict Show (TypeRep (ComposeK Maybe))
witness base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep forall k (a :: k).
Show (TypeRep a)
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
updSolvedSetTcs:
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
addTcEvBind
ak8a
[W] $dShow_akb7
= base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep @[(* -> *)
-> * -> *,
ComposeK Maybe]
[]
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_akb8 {1}:: Show
(TypeRep Maybe) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak7p {0}:: Monad
m_ak7o[tau:3] (CNonCanonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_akb8 {1}:: Show
(TypeRep Maybe) (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe) (CNonCanonical)
canEvNC:cls Show [TypeRep Maybe]
flatten_many { TypeRep Maybe
flatten } TypeRep Maybe
canClass
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
Show (TypeRep Maybe)
ContinueWith [WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akb8 {1}:: Show
(TypeRep Maybe) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akb8 {1}:: Show
(TypeRep Maybe) (CDictCan)
doTopReact [WD] $dShow_akb8 {1}:: Show (TypeRep Maybe) (CDictCan)
matchClassInst pred = Show (TypeRep Maybe) {
matchClass success
dict Show (TypeRep Maybe)
witness base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep forall k (a :: k).
Show (TypeRep a)
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
updSolvedSetTcs: [WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
addTcEvBind
ak8a
[W] $dShow_akb8
= base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep @[* -> *,
Maybe]
[]
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak7p {0}:: Monad
m_ak7o[tau:3] (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dMonad_ak7p {0}:: Monad
m_ak7o[tau:3] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3] (CNonCanonical)
canEvNC:cls Monad [m_ak7o[tau:3]]
flatten_many { m_ak7o[tau:3]
Following filled tyvar m_ak7o[tau:3] = IO
flatten } IO
canClass
[WD] $dMonad_ak7p {0}:: Monad m_ak7o[tau:3]
Monad IO
ContinueWith [WD] $dMonad_ak7p {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak7p {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak7p {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak7p {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak8a
[W] $dMonad_ak7p = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak88 {0}:: Monad
m_ak87[tau:3] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dApplicative_ak7t {0}:: Applicative
f_ak7s[tau:3] (CNonCanonical)
canEvNC:cls Applicative [f_ak7s[tau:3]]
flatten_many { f_ak7s[tau:3]
Following filled tyvar f_ak7s[tau:3] = IO
flatten } IO
canClass
[WD] $dApplicative_ak7t {0}:: Applicative f_ak7s[tau:3]
Applicative IO
ContinueWith [WD] $dApplicative_ak7t {0}:: Applicative IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dApplicative_ak7t {0}:: Applicative
IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dApplicative_ak7t {0}:: Applicative
IO (CDictCan(psc))
doTopReact
[WD] $dApplicative_ak7t {0}:: Applicative IO (CDictCan(psc))
addTcEvBind
ak8a
[W] $dApplicative_ak7t = $dApplicative_ajMU
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak88 {0}:: Monad
m_ak87[tau:3] (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [WD] $dMonad_ak88 {0}:: Monad
m_ak87[tau:3] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3] (CNonCanonical)
canEvNC:cls Monad [m_ak87[tau:3]]
flatten_many { m_ak87[tau:3]
Following filled tyvar m_ak87[tau:3] = IO
flatten } IO
canClass
[WD] $dMonad_ak88 {0}:: Monad m_ak87[tau:3]
Monad IO
ContinueWith [WD] $dMonad_ak88 {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak88 {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak88 {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak88 {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak8a
[W] $dMonad_ak88 = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
getUnsolvedInerts
tv eqs = {}
fun eqs = {}
insols = {}
others = {}
implics = {}
Unflattening
{Funeqs =
Tv eqs =}
Unflattening 1 {}
Unflattening 2 {}
Unflattening 3 {}
Unflattening done {}
zonkSimples done: {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveNestedImplications starting {
solveImplication {
Implic {
TcLevel = 4
Skolems = k1_ak7x[ssk:4]
(a_ak7y[ssk:4] :: k1_ak7x[ssk:4] -> k2_ak7v[tau:3])
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7A :: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
Wanted =
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5] -> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
Binds = EvBindsVar<ak86>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }
Inerts {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
solveSimpleGivens {
[[G] $d~_ak7A {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)]
-----------------------------
Start solver pipeline {
work item = [G] $d~_ak7A {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] $d~_ak7A {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)
canonicalize (non-canonical)
[G] $d~_ak7A {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)
canEvNC:cls
~ [k2_ak7v[tau:3], t_ak7w[tau:3], a_ak7y[ssk:4] b_ak7z[ssk:4]]
addTcEvBind
ak86
[G] $d~~_akb9 = sc(($d~_ak7A, 0))
mk_superclasses_of
~~ [k2_ak7v[tau:3], k2_ak7v[tau:3], t_ak7w[tau:3],
a_ak7y[ssk:4] b_ak7z[ssk:4]]
False
[31e :-> ~]
addTcEvBind
ak86
[G] cobox_akba = sc(($d~~_akb9, 0))
Emitting fresh work
[G] $d~~_akb9 {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CDictCan)
[G] cobox_akba {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
GHC.Prim.~#
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)
flatten_many {
k2_ak7v[tau:3]
t_ak7w[tau:3]
a_ak7y[ssk:4] b_ak7z[ssk:4]
Following filled tyvar
k2_ak7v[tau:3] = k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Following filled tyvar t_ak7w[tau:3] = a_ak7d[ssk:3]
Unfilled tyvar a_ak7d[ssk:3]
Following inert tyvar
FM_FlattenAll a_ak7d[ssk:3] = (ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N ->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> Sym cobox_akaJ
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> Sym cobox_akaJ)
; Sym (<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
Unfilled tyvar a_ak7y[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Following filled tyvar
k2_ak7v[tau:3] = k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_SubstOnly k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ak7z[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
flatten/appty
a_ak7y[ssk:4]
b_ak7z[ssk:4]
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
b_ak7z[ssk:4]
nominal
nominal
flatten }
(* -> *) -> * -> *
ComposeK Maybe
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4]
addTcEvBind
ak86
[G] $d~_akbb
= $d~_ak7A `cast` (Sub
(Sym
((~)
(Sym cobox ->_N Sym cobox ->_N <*>_N)
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N ->_N Sym cobox)
(Sym (<* -> *>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N ->_N Sym cobox)) <Maybe>_N)
(Sym cobox))
(Coh <a_ak7y[ssk:4]>_N
(Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) <b_ak7z[ssk:4]>_N))_N))
canClass
[G] $d~_ak7A {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
(ComposeK Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *) -> * -> *))
ContinueWith [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> * -> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
doTopReact
[G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> * -> *)) (CDictCan)
try_fundeps
[G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> * -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~_akbb {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] $d~~_akb9 {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CDictCan)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akba {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
GHC.Prim.~#
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)}
runStage canonicalization {
workitem = [G] $d~~_akb9 {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CDictCan)
flatten_many {
k2_ak7v[tau:3]
k2_ak7v[tau:3]
t_ak7w[tau:3]
a_ak7y[ssk:4] b_ak7z[ssk:4]
Following filled tyvar
k2_ak7v[tau:3] = k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Following filled tyvar
k2_ak7v[tau:3] = k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Following filled tyvar t_ak7w[tau:3] = a_ak7d[ssk:3]
Unfilled tyvar a_ak7d[ssk:3]
Following inert tyvar
FM_FlattenAll a_ak7d[ssk:3] = (ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N ->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> Sym cobox_akaJ
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> Sym cobox_akaJ)
; Sym (<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
Unfilled tyvar a_ak7y[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Following filled tyvar
k2_ak7v[tau:3] = k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_SubstOnly k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ak7z[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
flatten/appty
a_ak7y[ssk:4]
b_ak7z[ssk:4]
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
b_ak7z[ssk:4]
nominal
nominal
flatten }
(* -> *) -> * -> *
(* -> *) -> * -> *
ComposeK Maybe
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4]
addTcEvBind
ak86
[G] $d~~_akbc
= $d~~_akb9 `cast` (Sub
(Sym
((~~)
(Sym cobox ->_N Sym cobox ->_N <*>_N)
(Sym cobox ->_N Sym cobox ->_N <*>_N)
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(<* -> *>_N ->_N Sym cobox)
(Sym (<* -> *>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(<* -> *>_N ->_N Sym cobox)) <Maybe>_N)
(Sym cobox))
(Coh <a_ak7y[ssk:4]>_N
(Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) <b_ak7z[ssk:4]>_N))_N))
canClass
[G] $d~~_akb9 {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
~~
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
(ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *) -> * -> *))
ContinueWith [G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
doTopReact
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> * -> *)) (CDictCan)
try_fundeps
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> * -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~~_akbc {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] cobox_akba {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
GHC.Prim.~#
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
Dictionaries = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] cobox_akba {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
GHC.Prim.~#
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akba {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
GHC.Prim.~#
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3]) (CNonCanonical)
canEvNC:eq
t_ak7w[tau:3]
a_ak7y[ssk:4] b_ak7z[ssk:4]
can_eq_nc
False
[G] cobox_akba {0}:: (t_ak7w[tau:3] :: k2_ak7v[tau:3])
GHC.Prim.~#
(a_ak7y[ssk:4] b_ak7z[ssk:4] :: k2_ak7v[tau:3])
nominal equality
a_ak7d[ssk:3]
t_ak7w[tau:3]
a_ak7y[ssk:4] b_ak7z[ssk:4]
a_ak7y[ssk:4] b_ak7z[ssk:4]
flatten { t_ak7w[tau:3]
Following filled tyvar t_ak7w[tau:3] = a_ak7d[ssk:3]
Unfilled tyvar a_ak7d[ssk:3]
Following inert tyvar
FM_FlattenAll a_ak7d[ssk:3] = (ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N ->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
<* -> *>_N -> Sym cobox_akaJ
<(* -> *) -> (* -> *) -> * -> *>_N
<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
(<* -> *>_N -> Sym cobox_akaJ)
; Sym (<* -> *>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
flatten/appty
(ComposeK |> <* -> *>_N ->_N Sym cobox)
Maybe
ComposeK
Maybe
nominal
nominal
flatten } ComposeK Maybe
flatten { a_ak7y[ssk:4] b_ak7z[ssk:4]
Unfilled tyvar a_ak7y[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Following filled tyvar
k2_ak7v[tau:3] = k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_SubstOnly k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ak7z[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
flatten/appty
a_ak7y[ssk:4]
b_ak7z[ssk:4]
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
b_ak7z[ssk:4]
nominal
nominal
flatten }
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4]
addTcEvBind
ak86
[G] cobox_akbd
= CO Sym
(Sym
(<ComposeK>_N |> ((<* -> *>_N -> Sym cobox_akaJ)
; Sym
(<* -> *>_N
-> Sym cobox_akaN -> Sym cobox_akai -> <*>_N))) |> (<* -> *>_N
-> Sym
cobox_akaJ)) <Maybe>_N
; Sym cobox_akaK
; cobox_akba
; Sym
(<a_ak7y[ssk:4]>_N |> Sym
(<k1_ak7x[ssk:4]>_N
-> Sym cobox_akaN
-> Sym cobox_akai
-> <*>_N) <b_ak7z[ssk:4]>_N)
addTcEvBind
ak86
[G] cobox_akbe = CO Left cobox_akbd
addTcEvBind
ak86
[G] cobox_akbf = CO Right cobox_akbd
Emitting fresh work
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
can_eq_nc
False
[G] cobox_akbe {1}:: (ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
GHC.Prim.~#
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) :: (k1_ak7x[ssk:4]
-> (* -> *) -> * -> *))
nominal equality
ComposeK
ComposeK
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
Decomposing cast
[G] cobox_akbe {1}:: (ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
GHC.Prim.~#
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) :: (k1_ak7x[ssk:4]
-> (* -> *) -> * -> *))
a_ak7y[ssk:4] |> Sym
(<k1_ak7x[ssk:4]>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
ComposeK
addTcEvBind
ak86
[G] cobox_akbg
= CO Sym
(<a_ak7y[ssk:4]>_N |> Sym
(<k1_ak7x[ssk:4]>_N
-> Sym cobox_akaN -> Sym cobox_akai -> <*>_N))
; Sym cobox_akbe
can_eq_nc
False
[G] cobox_akbg {2}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
(ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
nominal equality
a_ak7y[ssk:4]
a_ak7y[ssk:4]
ComposeK
ComposeK
flatten { a_ak7y[ssk:4]
Unfilled tyvar a_ak7y[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_SubstOnly k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten }
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
flatten { ComposeK
flatten } ComposeK
addTcEvBind
ak86
[G] cobox_akbh
= CO <a_ak7y[ssk:4]>_N |> Sym
(<k1_ak7x[ssk:4]>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
; cobox_akbg
Decomposing cast
[G] cobox_akbh {3}:: ((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) :: (k1_ak7x[ssk:4]
-> (* -> *) -> * -> *))
GHC.Prim.~#
(ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
a_ak7y[ssk:4] |> Sym
(<k1_ak7x[ssk:4]>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
ComposeK
addTcEvBind
ak86
[G] cobox_akbi
= CO Sym
(<a_ak7y[ssk:4]>_N |> Sym
(<k1_ak7x[ssk:4]>_N
-> Sym cobox_akaN -> Sym cobox_akai -> <*>_N))
; cobox_akbh
can_eq_nc
True
[G] cobox_akbi {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
(ComposeK :: ((* -> *) -> (* -> *) -> * -> *))
nominal equality
a_ak7y[ssk:4]
a_ak7y[ssk:4]
ComposeK
ComposeK
addTcEvBind
ak86
[G] cobox_akbj = CO kind cobox_akbi
Hetero equality gives rise to given kind equality
cobox_akbj :: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *)
Emitting fresh work
[G] cobox_akbj {4}:: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *) (CNonCanonical)
addTcEvBind
ak86
[G] cobox_akbk = CO Sym (Sym cobox_akbi |> Sym cobox_akbj)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Can't solve tyvar equality
LHS: a_ak7y[ssk:4] :: k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
RHS: (ComposeK |> Sym cobox) :: k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
addInertEq {
Adding new inert equality: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbj {4}:: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbf {1}:: (Maybe :: (*
-> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbj {4}:: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbj {4}:: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
(* -> *) -> (* -> *) -> * -> *
can_eq_nc
False
[G] cobox_akbj {4}:: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *)
nominal equality
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
k1_ak7x[ssk:4] -> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
(* -> *) -> (* -> *) -> * -> *
(* -> *) -> (* -> *) -> * -> *
canTyConApp
[G] cobox_akbj {4}:: ((k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> (* -> *) -> * -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, k1_ak7x[ssk:4],
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, * -> *,
(* -> *) -> * -> *]
addTcEvBind
ak86
[G] cobox_akbl = CO Nth:0 cobox_akbj
addTcEvBind
ak86
[G] cobox_akbm = CO Nth:1 cobox_akbj
addTcEvBind
ak86
[G] cobox_akbn = CO Nth:2 cobox_akbj
addTcEvBind
ak86
[G] cobox_akbo = CO Nth:3 cobox_akbj
Emitting fresh work
[G] cobox_akbl {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbm {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbo {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbl {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbm {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbo {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbl {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbl {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbm {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbo {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbm {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbm {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbo {4}:: ((k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7x[ssk:4]
* -> *
can_eq_nc
False
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ak7x[ssk:4]
k1_ak7x[ssk:4]
* -> *
* -> *
flatten { k1_ak7x[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
flatten } k1_ak7x[ssk:4]
flatten { * -> *
flatten } * -> *
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Can't solve tyvar equality
LHS: k1_ak7x[ssk:4] :: *
RHS: * -> * :: *
addInertEq {
Adding new inert equality: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbo {4}:: ((k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbf {1}:: (Maybe :: (*
-> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbo {4}:: ((k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbo {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
(* -> *) -> * -> *
can_eq_nc
False
[G] cobox_akbo {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *)
nominal equality
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
(* -> *) -> * -> *
(* -> *) -> * -> *
canTyConApp
[G] cobox_akbo {4}:: ((k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
(((* -> *) -> * -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, k1_ak7c[ssk:3],
k1_ajUb[ssk:2] -> *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, * -> *, * -> *]
addTcEvBind
ak86
[G] cobox_akbp = CO Nth:0 cobox_akbo
addTcEvBind
ak86
[G] cobox_akbq = CO Nth:1 cobox_akbo
addTcEvBind
ak86
[G] cobox_akbr = CO Nth:2 cobox_akbo
addTcEvBind
ak86
[G] cobox_akbs = CO Nth:3 cobox_akbo
Emitting fresh work
[G] cobox_akbp {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbq {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbr {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbp {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbq {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbr {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbp {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbp {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbq {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbr {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbq {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbq {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbr {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbs {4}:: ((k1_ajUb[ssk:2]
-> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbr {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbr {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7c[ssk:3]
* -> *
can_eq_nc
False
[G] cobox_akbr {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ak7c[ssk:3]
k1_ak7c[ssk:3]
* -> *
* -> *
flatten { k1_ak7c[ssk:3]
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten } * -> *
flatten { * -> *
flatten } * -> *
addTcEvBind
ak86
[G] cobox_akbt = CO Sym cobox_akaN ; cobox_akbr
canTyConApp
[G] cobox_akbt {5}:: ((* -> *) :: *) GHC.Prim.~# ((* -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
addTcEvBind
ak86
[G] cobox_akbu = CO <'GHC.Types.LiftedRep>_N
addTcEvBind
ak86
[G] cobox_akbv = CO <'GHC.Types.LiftedRep>_N
addTcEvBind
ak86
[G] cobox_akbw = CO <*>_N
addTcEvBind
ak86
[G] cobox_akbx = CO <*>_N
Emitting fresh work
[G] cobox_akbu {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbv {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbw {5}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbx {5}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbu {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbv {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbw {5}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbx {5}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbu {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbu {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbv {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbw {5}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbx {5}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbv {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbv {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbw {5}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbx {5}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbw {5}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbw {5}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbx {5}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbs {4}:: ((k1_ajUb[ssk:2]
-> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbx {5}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbx {5}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbf {1}:: (Maybe :: (*
-> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ajUb[ssk:2] -> *
* -> *
can_eq_nc
False
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ajUb[ssk:2] -> *
k1_ajUb[ssk:2] -> *
* -> *
* -> *
canTyConApp
[G] cobox_akbs {4}:: ((k1_ajUb[ssk:2] -> *) :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, k1_ajUb[ssk:2], *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
addTcEvBind
ak86
[G] cobox_akby = CO Nth:0 cobox_akbs
addTcEvBind
ak86
[G] cobox_akbz = CO Nth:1 cobox_akbs
addTcEvBind
ak86
[G] cobox_akbA = CO Nth:2 cobox_akbs
addTcEvBind
ak86
[G] cobox_akbB = CO Nth:3 cobox_akbs
Emitting fresh work
[G] cobox_akby {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbz {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbA {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbB {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akby {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbz {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbA {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbB {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akby {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akby {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbz {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbA {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbB {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbz {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbz {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbA {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbB {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbA {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbA {4}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canEvNC:eq
k1_ajUb[ssk:2]
*
can_eq_nc
False
[G] cobox_akbA {4}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
nominal equality
k1_ajUb[ssk:2]
k1_ajUb[ssk:2]
*
*
flatten { k1_ajUb[ssk:2]
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten } *
flatten { *
flatten } *
addTcEvBind
ak86
[G] cobox_akbC = CO Sym cobox_akai ; cobox_akbA
canTyConApp
[G] cobox_akbC {5}:: (* :: *) GHC.Prim.~# (* :: *)
nominal equality
TYPE
['GHC.Types.LiftedRep]
['GHC.Types.LiftedRep]
addTcEvBind
ak86
[G] cobox_akbD = CO <'GHC.Types.LiftedRep>_N
Emitting fresh work
[G] cobox_akbD {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbD {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbB {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbD {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbD {5}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbB {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbf {1}:: (Maybe :: (*
-> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbB {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbB {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
Dictionaries = [G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~_akbb {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4]) (CNonCanonical)
canEvNC:eq
Maybe
b_ak7z[ssk:4]
can_eq_nc
False
[G] cobox_akbf {1}:: (Maybe :: (* -> *))
GHC.Prim.~#
(b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
nominal equality
Maybe
Maybe
b_ak7z[ssk:4]
b_ak7z[ssk:4]
flatten { Maybe
flatten } Maybe
flatten { b_ak7z[ssk:4]
Unfilled tyvar b_ak7z[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_SubstOnly k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten } (b_ak7z[ssk:4] |> cobox)
addTcEvBind
ak86
[G] cobox_akbE
= CO cobox_akbf ; Sym (<b_ak7z[ssk:4]>_N |> cobox_akbn)
Decomposing cast
[G] cobox_akbE {2}:: (Maybe :: (* -> *))
GHC.Prim.~#
((b_ak7z[ssk:4] |> cobox) :: (* -> *))
b_ak7z[ssk:4] |> cobox_akbn
Maybe
addTcEvBind
ak86
[G] cobox_akbF
= CO Sym (<b_ak7z[ssk:4]>_N |> cobox_akbn) ; Sym cobox_akbE
can_eq_nc
True
[G] cobox_akbF {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
(Maybe :: (* -> *))
nominal equality
b_ak7z[ssk:4]
b_ak7z[ssk:4]
Maybe
Maybe
addTcEvBind
ak86
[G] cobox_akbG = CO kind cobox_akbF
Hetero equality gives rise to given kind equality
cobox_akbG :: (k1_ak7x[ssk:4] :: *) GHC.Prim.~# ((* -> *) :: *)
Emitting fresh work
[G] cobox_akbG {3}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
addTcEvBind
ak86
[G] cobox_akbH = CO Sym (Sym cobox_akbF |> Sym cobox_akbG)
end stage canonicalization }
runStage interact with inerts {
workitem = [G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Can't solve tyvar equality
LHS: b_ak7z[ssk:4] :: k1_ak7x[ssk:4]
RHS: (Maybe |> Sym cobox) :: k1_ak7x[ssk:4]
addInertEq {
Adding new inert equality: [G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
addInertEq }
end stage interact with inerts }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbG {3}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~_akbb {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbG {3}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbG {3}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CNonCanonical)
canEvNC:eq
k1_ak7x[ssk:4]
* -> *
can_eq_nc
False
[G] cobox_akbG {3}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
nominal equality
k1_ak7x[ssk:4]
k1_ak7x[ssk:4]
* -> *
* -> *
flatten { k1_ak7x[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten } * -> *
flatten { * -> *
flatten } * -> *
addTcEvBind
ak86
[G] cobox_akbI = CO Sym cobox_akbn ; cobox_akbG
canTyConApp
[G] cobox_akbI {4}:: ((* -> *) :: *) GHC.Prim.~# ((* -> *) :: *)
nominal equality
(->)
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
['GHC.Types.LiftedRep, 'GHC.Types.LiftedRep, *, *]
addTcEvBind
ak86
[G] cobox_akbJ = CO <'GHC.Types.LiftedRep>_N
addTcEvBind
ak86
[G] cobox_akbK = CO <'GHC.Types.LiftedRep>_N
addTcEvBind
ak86
[G] cobox_akbL = CO <*>_N
addTcEvBind
ak86
[G] cobox_akbM = CO <*>_N
Emitting fresh work
[G] cobox_akbJ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbK {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbL {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbJ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbK {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
[G] cobox_akbL {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbJ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbJ {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbK {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbL {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbK {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbK {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbL {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Eqs = [G] cobox_akbM {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
Non-eqs = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbL {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbL {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbM {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~_akbb {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbM {4}:: (* :: *)
GHC.Prim.~#
(* :: *) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *) (CNonCanonical)
canEvNC:eq
*
*
can_eq_nc
False
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *)
nominal equality
*
*
*
*
can_eq_nc
False
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *)
nominal equality
*
*
*
*
canTyConApp
[G] cobox_akbM {4}:: (* :: *) GHC.Prim.~# (* :: *)
nominal equality
TYPE
['GHC.Types.LiftedRep]
['GHC.Types.LiftedRep]
addTcEvBind
ak86
[G] cobox_akbN = CO <'GHC.Types.LiftedRep>_N
Emitting fresh work
[G] cobox_akbN {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] cobox_akbN {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~_akbb {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] cobox_akbN {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canonicalize (non-canonical)
[G] cobox_akbN {4}:: ('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep)
GHC.Prim.~#
('GHC.Types.LiftedRep :: GHC.Types.RuntimeRep) (CNonCanonical)
canEvNC:eq
'GHC.Types.LiftedRep
'GHC.Types.LiftedRep
end stage canonicalization }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [G] $d~~_akbc {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((*
-> *)
-> *
-> *)) (CDictCan)}
runStage canonicalization {
workitem = [G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
flatten_many {
(* -> *) -> * -> *
ComposeK Maybe
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4]
Unfilled tyvar a_ak7y[ssk:4]
Following inert tyvar
FM_FlattenAll a_ak7y[ssk:4] = (ComposeK |> Sym cobox)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
Sym cobox_akbj
<(* -> *) -> (* -> *) -> * -> *>_N
Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akbj
; Sym (Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym
(<k1_ak7x[ssk:4]>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akbn -> <(* -> *) -> * -> *>_N
(Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
; Sym
(<k1_ak7x[ssk:4]>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
; Sym (Sym cobox_akbn -> <(* -> *) -> * -> *>_N)
Unfilled tyvar b_ak7z[ssk:4]
Following inert tyvar
FM_FlattenAll b_ak7z[ssk:4] = (Maybe |> Sym cobox)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4])
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym cobox_akbG
<* -> *>_N
Sym cobox_akbn
Sym cobox_akbG ; cobox_akbn
flatten/appty
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
b_ak7z[ssk:4]
ComposeK
Maybe
nominal
nominal
flatten }
(* -> *) -> * -> *
ComposeK Maybe
ComposeK Maybe
addTcEvBind
ak86
[G] $d~_akbO
= $d~_akbb `cast` (Sub
(Sym
((~)
<(* -> *) -> * -> *>_N
<ComposeK Maybe>_N
(Sym (Coh (Sym (Coh (Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(Sym cobox)
(Sym (Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(Sym cobox)))
(Sym cobox))
(Trans
(Trans
(Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)
(Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))
(Sym (Sym cobox
->_N <(* -> *) -> * -> *>_N)))))
(Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))) (Trans
(Sym (Coh (Sym (Coh <Maybe>_N
(Trans
(Sym cobox)
cobox)))
(Sym cobox)))
(Sym cobox))))_N))
canClass
[G] $d~_akbb {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *) -> * -> *))
(ComposeK Maybe :: ((* -> *) -> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *))
ContinueWith [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
doTopReact
[G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
try_fundeps
[G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~_akbO {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~
(ComposeK Maybe :: ((* -> *)
-> *
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
-----------------------------
Start solver pipeline {
work item = [G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (*
-> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *)
-> *
-> *)) (CDictCan)
flatten_many {
(* -> *) -> * -> *
(* -> *) -> * -> *
ComposeK Maybe
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4]
Unfilled tyvar a_ak7y[ssk:4]
Following inert tyvar
FM_FlattenAll a_ak7y[ssk:4] = (ComposeK |> Sym cobox)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
Sym cobox_akbj
<(* -> *) -> (* -> *) -> * -> *>_N
Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akbj
; Sym (Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym
(<k1_ak7x[ssk:4]>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akbn -> <(* -> *) -> * -> *>_N
(Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
; Sym
(<k1_ak7x[ssk:4]>_N -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
; Sym (Sym cobox_akbn -> <(* -> *) -> * -> *>_N)
Unfilled tyvar b_ak7z[ssk:4]
Following inert tyvar
FM_FlattenAll b_ak7z[ssk:4] = (Maybe |> Sym cobox)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4])
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym cobox_akbG
<* -> *>_N
Sym cobox_akbn
Sym cobox_akbG ; cobox_akbn
flatten/appty
(a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))
b_ak7z[ssk:4]
ComposeK
Maybe
nominal
nominal
flatten }
(* -> *) -> * -> *
(* -> *) -> * -> *
ComposeK Maybe
ComposeK Maybe
addTcEvBind
ak86
[G] $d~~_akbP
= $d~~_akbc `cast` (Sub
(Sym
((~~)
<(* -> *) -> * -> *>_N
<(* -> *) -> * -> *>_N
<ComposeK Maybe>_N
(Sym (Coh (Sym (Coh (Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(Sym cobox)
(Sym (Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(Sym cobox)))
(Sym cobox))
(Trans
(Trans
(Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)
(Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))
(Sym (Sym cobox
->_N <(* -> *) -> * -> *>_N)))))
(Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N))) (Trans
(Sym (Coh (Sym (Coh <Maybe>_N
(Trans
(Sym cobox)
cobox)))
(Sym cobox)))
(Sym cobox))))_N))
canClass
[G] $d~~_akbc {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
((a_ak7y[ssk:4] |> Sym (<k1_ak7x[ssk:4]>_N
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)) b_ak7z[ssk:4] :: ((* -> *) -> * -> *))
(ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *))
ContinueWith [G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *))
end stage canonicalization }
runStage interact with inerts {
workitem = [G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
doTopReact
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
try_fundeps
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
end stage top-level reactions }
insertInertCan {
Trying to insert new non-eq inert item: [G] $d~~_akbP {0}:: (ComposeK
Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *)
-> *
-> *)) (CDictCan)
addInertCan }
End solver pipeline (kept as inert) }
final_item = [G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
End solveSimpleGivens }
solveWanteds {
WC {wc_simple =
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
wc_impl =
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5] -> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }}
solveSimpleWanteds {
{[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical),
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical),
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical),
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical),
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)}
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak7C {0}:: Monad
m_ak7B[tau:4] (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dShow_ak7G {0}:: Show
a_ak7F[tau:4] (CNonCanonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dMonad_ak7C {0}:: Monad
m_ak7B[tau:4] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4] (CNonCanonical)
canEvNC:cls Monad [m_ak7B[tau:4]]
flatten_many { m_ak7B[tau:4]
Following filled tyvar m_ak7B[tau:4] = IO
flatten } IO
canClass
[WD] $dMonad_ak7C {0}:: Monad m_ak7B[tau:4]
Monad IO
ContinueWith [WD] $dMonad_ak7C {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak7C {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak7C {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak7C {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak86
[W] $dMonad_ak7C = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_ak7G {0}:: Show
a_ak7F[tau:4] (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak7K {0}:: Monad
m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_ak7G {0}:: Show
a_ak7F[tau:4] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4] (CNonCanonical)
canEvNC:cls Show [a_ak7F[tau:4]]
flatten_many { a_ak7F[tau:4]
Following filled tyvar
a_ak7F[tau:4] = (a_ak7H[tau:4], b_ak7I[tau:4])
Following filled tyvar a_ak7H[tau:4] = TypeRep a_ak7y[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar a_ak7y[ssk:4]
Following inert tyvar
FM_FlattenAll a_ak7y[ssk:4] = (ComposeK |> Sym cobox)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
Sym cobox_akbj
<(* -> *) -> (* -> *) -> * -> *>_N
Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akbj
; Sym (Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
Following filled tyvar b_ak7I[tau:4] = TypeRep b_ak7z[ssk:4]
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar b_ak7z[ssk:4]
Following inert tyvar
FM_FlattenAll b_ak7z[ssk:4] = (Maybe |> Sym cobox)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4])
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
flatten_co
Sym cobox_akbG
<* -> *>_N
Sym cobox_akbn
Sym cobox_akbG ; cobox_akbn
flatten } (TypeRep ComposeK, TypeRep Maybe)
Emitting new wanted
$dShow_akbQ :: Show (TypeRep ComposeK, TypeRep Maybe)
arising from a use of ‘print’ at Typeable1.hs:20:5-16
addTcEvBind
ak86
[W] $dShow_ak7G
= $dShow_akbQ `cast` (Show
((,)
(TypeRep
(Sym cobox ->_N Sym cobox ->_N Sym cobox ->_N <*>_N)
(Trans
(Sym (Coh (Sym (Coh <ComposeK>_N
(Trans
(Sym cobox)
(Sym (Sym cobox
->_N Sym cobox
->_N Sym cobox
->_N <*>_N)))))
(Sym cobox)))
(Sym cobox)))_N
(TypeRep
(Sym cobox)
(Trans
(Sym (Coh (Sym (Coh <Maybe>_N (Trans (Sym cobox) cobox)))
(Sym cobox)))
(Sym cobox)))_N)_N)_R
canClass
[WD] $dShow_ak7G {0}:: Show a_ak7F[tau:4]
Show (TypeRep ComposeK, TypeRep Maybe)
ContinueWith [WD] $dShow_akbQ {0}:: Show
(TypeRep ComposeK, TypeRep Maybe)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akbQ {0}:: Show
(TypeRep ComposeK, TypeRep Maybe) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akbQ {0}:: Show
(TypeRep ComposeK, TypeRep Maybe) (CDictCan)
doTopReact
[WD] $dShow_akbQ {0}:: Show
(TypeRep ComposeK, TypeRep Maybe) (CDictCan)
matchClassInst pred = Show (TypeRep ComposeK, TypeRep Maybe) {
matchClass success
dict Show (TypeRep ComposeK, TypeRep Maybe)
witness GHC.Show.$fShow(,) forall a b.
(Show a, Show b) =>
Show (a, b)
} matchClassInst result
GenInst [Show (TypeRep ComposeK), Show (TypeRep Maybe)]
[safe]
doTopReact/found instance for
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
updSolvedSetTcs:
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
Emitting new wanted
$dShow_akbR :: Show (TypeRep ComposeK)
arising from a use of ‘print’ at Typeable1.hs:20:5-16
newWantedEvVar/cache hit
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
addTcEvBind
ak86
[W] $dShow_akbQ
= GHC.Show.$fShow(,) @[TypeRep ComposeK, TypeRep Maybe]
[$dShow_akbR, $dShow_akb8]
Emitting fresh work
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK) (CNonCanonical)
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dShow_akbR {1}:: Show
(TypeRep ComposeK) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak7K {0}:: Monad
m_ak7J[tau:4] (CNonCanonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dShow_akbR {1}:: Show
(TypeRep ComposeK) (CNonCanonical)
canonicalize (non-canonical)
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK) (CNonCanonical)
canEvNC:cls Show [TypeRep ComposeK]
flatten_many { TypeRep ComposeK
flatten } TypeRep ComposeK
canClass
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
Show (TypeRep ComposeK)
ContinueWith [WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dShow_akbR {1}:: Show
(TypeRep ComposeK) (CDictCan)
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dShow_akbR {1}:: Show
(TypeRep ComposeK) (CDictCan)
doTopReact
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK) (CDictCan)
matchClassInst pred = Show (TypeRep ComposeK) {
matchClass success
dict Show (TypeRep ComposeK)
witness base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep forall k (a :: k).
Show (TypeRep a)
} matchClassInst result
GenInst []
[safe]
doTopReact/found instance for
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
updSolvedSetTcs: [WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
addTcEvBind
ak86
[W] $dShow_akbR
= base-4.10.0.0:Data.Typeable.Internal.$fShowTypeRep @[(* -> *)
-> (* -> *) -> * -> *,
ComposeK]
[]
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak7K {0}:: Monad
m_ak7J[tau:4] (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dMonad_ak7K {0}:: Monad
m_ak7J[tau:4] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4] (CNonCanonical)
canEvNC:cls Monad [m_ak7J[tau:4]]
flatten_many { m_ak7J[tau:4]
Following filled tyvar m_ak7J[tau:4] = IO
flatten } IO
canClass
[WD] $dMonad_ak7K {0}:: Monad m_ak7J[tau:4]
Monad IO
ContinueWith [WD] $dMonad_ak7K {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak7K {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak7K {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak7K {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak86
[W] $dMonad_ak7K = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {Non-eqs = [WD] $dMonad_ak84 {0}:: Monad
m_ak83[tau:4] (CNonCanonical)}
runStage canonicalization {
workitem = [WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dApplicative_ak7O {0}:: Applicative
f_ak7N[tau:4] (CNonCanonical)
canEvNC:cls Applicative [f_ak7N[tau:4]]
flatten_many { f_ak7N[tau:4]
Following filled tyvar f_ak7N[tau:4] = IO
flatten } IO
canClass
[WD] $dApplicative_ak7O {0}:: Applicative f_ak7N[tau:4]
Applicative IO
ContinueWith [WD] $dApplicative_ak7O {0}:: Applicative IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dApplicative_ak7O {0}:: Applicative
IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dApplicative_ak7O {0}:: Applicative
IO (CDictCan(psc))
doTopReact
[WD] $dApplicative_ak7O {0}:: Applicative IO (CDictCan(psc))
addTcEvBind
ak86
[W] $dApplicative_ak7O = $dApplicative_ajMU
end stage top-level reactions }
End solver pipeline (discharged) }
-----------------------------
Start solver pipeline {
work item = [WD] $dMonad_ak84 {0}:: Monad
m_ak83[tau:4] (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [WD] $dMonad_ak84 {0}:: Monad
m_ak83[tau:4] (CNonCanonical)
canonicalize (non-canonical)
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4] (CNonCanonical)
canEvNC:cls Monad [m_ak83[tau:4]]
flatten_many { m_ak83[tau:4]
Following filled tyvar m_ak83[tau:4] = IO
flatten } IO
canClass
[WD] $dMonad_ak84 {0}:: Monad m_ak83[tau:4]
Monad IO
ContinueWith [WD] $dMonad_ak84 {0}:: Monad IO
end stage canonicalization }
runStage interact with inerts {
workitem = [WD] $dMonad_ak84 {0}:: Monad IO (CDictCan(psc))
end stage interact with inerts }
runStage top-level reactions {
workitem = [WD] $dMonad_ak84 {0}:: Monad IO (CDictCan(psc))
doTopReact [WD] $dMonad_ak84 {0}:: Monad IO (CDictCan(psc))
addTcEvBind
ak86
[W] $dMonad_ak84 = $dMonad_ajME
end stage top-level reactions }
End solver pipeline (discharged) }
getUnsolvedInerts
tv eqs = {}
fun eqs = {}
insols = {}
others = {}
implics = {}
Unflattening
{Funeqs =
Tv eqs =}
Unflattening 1 {}
Unflattening 2 {}
Unflattening 3 {}
Unflattening done {}
zonkSimples done: {}
solveSimpleWanteds end }
iterations = 1
residual = WC {}
solveNestedImplications starting {
solveImplication {
Implic {
TcLevel = 5
Skolems = k1_ak7S[ssk:5]
(a_ak7T[ssk:5] :: k1_ak7S[ssk:5] -> k2_ak7Q[tau:4])
(b_ak7U[ssk:5] :: k1_ak7S[ssk:5])
No-eqs = False
Status = Unsolved
Given =
$d~_ak7V :: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4])
Wanted =
WC {wc_simple =
[WD] $dShow_ak7X {0}:: Show a_ak7W[tau:5] (CNonCanonical)}
Binds = EvBindsVar<ak80>
Needed = []
a pattern with pattern synonym:
TRApp :: forall k2 (t :: k2).
() =>
forall k1 (a :: k1 -> k2) (b :: k1).
(t :: k2) ~ (a b :: k2) =>
TypeRep a -> TypeRep b -> TypeRep t,
in a pattern binding in
'do' block }
Inerts {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
solveSimpleGivens {
[[G] $d~_ak7V {0}:: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4]) (CNonCanonical)]
-----------------------------
Start solver pipeline {
work item = [G] $d~_ak7V {0}:: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4]) (CNonCanonical)
inerts = {Equalities: [G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akaY {3}:: (b_ak7e[ssk:3] :: k1_ak7c[ssk:3])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7c[ssk:3]) (CTyEqCan)
[G] cobox_akaK {4}:: (a_ak7d[ssk:3] :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N Sym cobox) Maybe :: (k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *)
GHC.Prim.~#
(* :: *) (CTyEqCan)
[G] cobox_akaf {1}:: (a_ajUc[ssk:2] :: (k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> <* -> *>_N
->_N <* -> *>_N
->_N Sym cobox) Maybe Maybe :: (k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akan {2}:: (b_ajUd[ssk:2] :: k1_ajUb[ssk:2])
GHC.Prim.~#
((Int |> Sym cobox) :: k1_ajUb[ssk:2]) (CTyEqCan)
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *) (CTyEqCan)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3]
-> k1_ajUb[ssk:2]
-> *)) (CTyEqCan)
[G] cobox_akbH {3}:: (b_ak7z[ssk:4] :: k1_ak7x[ssk:4])
GHC.Prim.~#
((Maybe |> Sym cobox) :: k1_ak7x[ssk:4]) (CTyEqCan)
Dictionaries = [G] $d~_akbO {0}:: (ComposeK Maybe :: ((* -> *)
-> * -> *))
~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~_akb4 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~_akaq {0}:: (ComposeK Maybe Maybe Int :: *)
~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
[G] $d~~_akbP {0}:: (ComposeK Maybe :: ((* -> *) -> * -> *))
~~
(ComposeK Maybe :: ((* -> *) -> * -> *)) (CDictCan)
[G] $d~~_akb5 {0}:: (ComposeK Maybe Maybe :: (* -> *))
~~
(ComposeK Maybe Maybe :: (* -> *)) (CDictCan)
[G] $d~~_akar {0}:: (ComposeK Maybe Maybe Int :: *)
~~
(ComposeK Maybe Maybe Int :: *) (CDictCan)
Unsolved goals = 0}
Solved dicts [WD] $dMonad_ajME {0}:: Monad IO
[WD] $dApplicative_ajMU {0}:: Applicative IO
[WD] $dTypeable_aka3 {3}:: Typeable ComposeK
[WD] $dTypeable_aka1 {2}:: Typeable (ComposeK Maybe)
[WD] $dTypeable_ak9Z {1}:: Typeable (ComposeK Maybe Maybe)
[WD] $dTypeable_aka4 {3}:: Typeable Maybe
[WD] $dTypeable_aka7 {5}:: Typeable TYPE
[WD] $dTypeable_ajNi {0}:: Typeable (ComposeK Maybe Maybe Int)
[WD] $dTypeable_aka5 {4}:: Typeable *
[WD] $dTypeable_aka0 {1}:: Typeable Int
[WD] $dTypeable_aka8 {5}:: Typeable 'GHC.Types.LiftedRep
[WD] $dShow_akbQ {0}:: Show (TypeRep ComposeK, TypeRep Maybe)
[WD] $dShow_akb6 {0}:: Show
(TypeRep (ComposeK Maybe), TypeRep Maybe)
[WD] $dShow_akas {0}:: Show
(TypeRep (ComposeK Maybe Maybe), TypeRep Int)
[WD] $dShow_akbR {1}:: Show (TypeRep ComposeK)
[WD] $dShow_akb7 {1}:: Show (TypeRep (ComposeK Maybe))
[WD] $dShow_akav {1}:: Show (TypeRep (ComposeK Maybe Maybe))
[WD] $dShow_akb8 {1}:: Show (TypeRep Maybe)
[WD] $dShow_akaw {1}:: Show (TypeRep Int)
rest of worklist = WL {}
runStage canonicalization {
workitem = [G] $d~_ak7V {0}:: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4]) (CNonCanonical)
canonicalize (non-canonical)
[G] $d~_ak7V {0}:: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4]) (CNonCanonical)
canEvNC:cls
~ [k2_ak7Q[tau:4], t_ak7R[tau:4], a_ak7T[ssk:5] b_ak7U[ssk:5]]
addTcEvBind
ak80
[G] $d~~_akbS = sc(($d~_ak7V, 0))
mk_superclasses_of
~~ [k2_ak7Q[tau:4], k2_ak7Q[tau:4], t_ak7R[tau:4],
a_ak7T[ssk:5] b_ak7U[ssk:5]]
False
[31e :-> ~]
addTcEvBind
ak80
[G] cobox_akbT = sc(($d~~_akbS, 0))
Emitting fresh work
[G] $d~~_akbS {0}:: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
~~
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4]) (CDictCan)
[G] cobox_akbT {0}:: (t_ak7R[tau:4] :: k2_ak7Q[tau:4])
GHC.Prim.~#
(a_ak7T[ssk:5] b_ak7U[ssk:5] :: k2_ak7Q[tau:4]) (CNonCanonical)
flatten_many {
k2_ak7Q[tau:4]
t_ak7R[tau:4]
a_ak7T[ssk:5] b_ak7U[ssk:5]
Following filled tyvar
k2_ak7Q[tau:4] = k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Following filled tyvar t_ak7R[tau:4] = a_ak7y[ssk:4]
Unfilled tyvar a_ak7y[ssk:4]
Following inert tyvar
FM_FlattenAll a_ak7y[ssk:4] = (ComposeK |> Sym cobox)
[G] cobox_akbk {4}:: (a_ak7y[ssk:4] :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
GHC.Prim.~#
((ComposeK |> Sym cobox) :: (k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *))
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_FlattenAll k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_FlattenAll k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_FlattenAll k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
flatten_co
Sym cobox_akbj
<(* -> *) -> (* -> *) -> * -> *>_N
Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N
Sym cobox_akbj
; Sym (Sym cobox_akbn -> Sym cobox_akaN -> Sym cobox_akai -> <*>_N)
Unfilled tyvar a_ak7T[ssk:5]
Unfilled tyvar k1_ak7S[ssk:5]
Following filled tyvar
k2_ak7Q[tau:4] = k1_ak7x[ssk:4]
-> k1_ak7c[ssk:3] -> k1_ajUb[ssk:2] -> *
Unfilled tyvar k1_ak7x[ssk:4]
Following inert tyvar
FM_SubstOnly k1_ak7x[ssk:4] = * -> *
[G] cobox_akbn {4}:: (k1_ak7x[ssk:4] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ak7c[ssk:3]
Following inert tyvar
FM_SubstOnly k1_ak7c[ssk:3] = * -> *
[G] cobox_akaN {4}:: (k1_ak7c[ssk:3] :: *)
GHC.Prim.~#
((* -> *) :: *)
Unfilled tyvar k1_ajUb[ssk:2]
Following inert tyvar
FM_SubstOnly k1_ajUb[ssk:2] = *
[G] cobox_akai {1}:: (k1_ajUb[ssk:2] :: *) GHC.Prim.~# (* :: *)
Unfilled tyvar b_ak7U[ssk:5]
Unfilled tyvar k1_ak7S[ssk:5]
flatten/appty
a_ak7T[ssk:5]
b_ak7U[ssk:5]
(a_ak7T[ssk:5] |> Sym (
View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment