X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcGenDeriv.lhs;h=2c0b89df089dbcecf43e6aadb53df76b894300fb;hb=c27e722fcf8ea5fb4dc0c64e9e1d6c4b66abd46c;hp=35dbf199e670e9266d9caca5a48f686dfd85c347;hpb=a8407757462804dfd51708d6cfdda0417a91bf8e;p=ghc-hetmet.git diff --git a/compiler/typecheck/TcGenDeriv.lhs b/compiler/typecheck/TcGenDeriv.lhs index 35dbf19..2c0b89d 100644 --- a/compiler/typecheck/TcGenDeriv.lhs +++ b/compiler/typecheck/TcGenDeriv.lhs @@ -1288,7 +1288,8 @@ kind2 = liftedTypeKind `mkArrowKind` kind1 gfoldl_RDR, gunfold_RDR, toConstr_RDR, dataTypeOf_RDR, mkConstr_RDR, mkDataType_RDR, conIndex_RDR, prefix_RDR, infix_RDR, - dataCast1_RDR, dataCast2_RDR, gcast1_RDR, gcast2_RDR :: RdrName + dataCast1_RDR, dataCast2_RDR, gcast1_RDR, gcast2_RDR, + constr_RDR, dataType_RDR :: RdrName gfoldl_RDR = varQual_RDR gENERICS (fsLit "gfoldl") gunfold_RDR = varQual_RDR gENERICS (fsLit "gunfold") toConstr_RDR = varQual_RDR gENERICS (fsLit "toConstr") @@ -1688,7 +1689,7 @@ genAuxBind loc (GenTag2Con tycon) nlHsApp (nlHsVar tagToEnum_RDR) a_Expr)], L loc (TypeSig (L loc rdr_name) sig_ty)) where - sig_ty = nlHsTyVar (getRdrName intPrimTyCon) + sig_ty = nlHsTyVar (getRdrName intTyCon) `nlHsFunTy` (nlHsTyVar (getRdrName tycon)) rdr_name = tag2con_RDR tycon @@ -1698,7 +1699,7 @@ genAuxBind loc (GenMaxTag tycon) L loc (TypeSig (L loc rdr_name) sig_ty)) where rdr_name = maxtag_RDR tycon - sig_ty = nlHsTyVar (getRdrName intPrimTyCon) + sig_ty = nlHsTyVar (getRdrName intTyCon) rhs = nlHsApp (nlHsVar intDataCon_RDR) (nlHsLit (HsIntPrim max_tag)) max_tag = case (tyConDataCons tycon) of data_cons -> toInteger ((length data_cons) - fIRST_TAG)