diff options
Diffstat (limited to 'compiler/iface/MkIface.lhs')
-rw-r--r-- | compiler/iface/MkIface.lhs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/compiler/iface/MkIface.lhs b/compiler/iface/MkIface.lhs index f43cbd48fc..a04ce174ad 100644 --- a/compiler/iface/MkIface.lhs +++ b/compiler/iface/MkIface.lhs @@ -1339,9 +1339,13 @@ tyThingToIfaceDecl (AClass clas) = classExtraBigSig clas tycon = classTyCon clas + toIfaceAT :: ClassATItem -> IfaceAT toIfaceAT (tc, def_tcs) = IfaceAT (tyThingToIfaceDecl (ATyCon tc)) - (fmap (map (tyThingToIfaceDecl . ATyCon)) def_tcs) + (fmap (map to_if_at_def) def_tcs) + where + to_if_at_def (tvs, pat_tys, ty) + = (toIfaceTvBndrs tvs, map toIfaceType pat_tys, toIfaceType ty) toIfaceClassOp (sel_id, def_meth) = ASSERT(sel_tyvars == clas_tyvars) |