--================================================================================ Typechecked: {- rec -} AbsBinds [a{-auS-}] [d.Foo_av1] [([a{-auS-}], $d1{-rvF,x-}, d.Foo_auJ)] d.Foo_av5 = d.Foo_auJ $mop1_avJ = ClassFoo.$mop1{-ruM,p-} [a{-auS-}] d.Foo_av5 d.Foo_av7 = d.Foo_auJ $mop2_avI = ClassFoo.$mop2{-ruP,p-} [a{-auS-}] d.Foo_av7 AbsBinds [] [] [([], op1_auL, op1_auO)] op1_auO = $mop1_avJ AbsBinds [] [] [([], op2_auW, op2_auY)] op2_auY = $mop2_avI d.Foo_auJ = ({-dict-} [] [op1_auL, op2_auW]) {- rec -} AbsBinds [] [] [([], $d2{-rvK,x-}, d.Foo_avd)] AbsBinds [] [] [([], op1_avf, op1_avh)] op1_avh = $mop1_avH AbsBinds [] [] [([], op2_avo, op2_avq)] op2_avq = $mop2_avG d.Foo_avd = ({-dict-} [] [op1_avf, op2_avo]) {- nonrec -} d.Foo_avB = $d2{-rvK,x-} $mop1_avH = ClassFoo.$mop1{-ruM,p-} PrelBase.Int{-3g,p-} d.Foo_avB d.Foo_avE = d.Foo_avB $mop2_avG = ClassFoo.$mop2{-ruP,p-} PrelBase.Int{-3g,p-} d.Foo_avE ghc: module version changed to 1; reason: no old .hi file _interface_ Bar 1 _instance_modules_ ArrBase Bar IO PrelNum _usages_ ClassFoo 1 :: Foo 1; _exports_ _instances_ instance _forall_ [a] {ClassFoo.Foo a} => {ClassFoo.Foo [a]} = $d1; instance {ClassFoo.Foo PrelBase.Int} = $d2; _declarations_ 1 $d1 _:_ _forall_ [a] {ClassFoo.Foo a} => {ClassFoo.Foo [a]} ;; 1 $d2 _:_ {ClassFoo.Foo PrelBase.Int} ;;