X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2FhsSyn%2FHsDecls.lhs;h=dadcc6b984b53586c1a8f837ff0da851d1046217;hb=564fe4b71b7fedc5167a616fb630bea3eff2e721;hp=ddd11a662d86e1a4c240898f440a86e9a648bdc6;hpb=36436bc62a98f53e126ec02fe946337c4c766c3f;p=ghc-hetmet.git diff --git a/ghc/compiler/hsSyn/HsDecls.lhs b/ghc/compiler/hsSyn/HsDecls.lhs index ddd11a6..dadcc6b 100644 --- a/ghc/compiler/hsSyn/HsDecls.lhs +++ b/ghc/compiler/hsSyn/HsDecls.lhs @@ -110,7 +110,8 @@ emptyRnGroup = emptyGroup { hs_valds = emptyValBindsOut } emptyGroup = HsGroup { hs_tyclds = [], hs_instds = [], hs_fixds = [], hs_defds = [], hs_fords = [], - hs_depds = [] ,hs_ruleds = [] } + hs_depds = [], hs_ruleds = [], + hs_valds = error "emptyGroup hs_valds: Can't happen" } appendGroups :: HsGroup a -> HsGroup a -> HsGroup a appendGroups @@ -405,7 +406,7 @@ tyClDeclNames (TySynonym {tcdLName = name}) = [name] tyClDeclNames (ForeignType {tcdLName = name}) = [name] tyClDeclNames (ClassDecl {tcdLName = cls_name, tcdSigs = sigs}) - = cls_name : [n | L _ (Sig n _) <- sigs] + = cls_name : [n | L _ (TypeSig n _) <- sigs] tyClDeclNames (TyData {tcdLName = tc_name, tcdCons = cons}) = tc_name : conDeclsNames (map unLoc cons) @@ -500,6 +501,18 @@ instance Outputable NewOrData where \begin{code} type LConDecl name = Located (ConDecl name) +-- data T b = forall a. Eq a => MkT a b +-- MkT :: forall b a. Eq a => MkT a b + +-- data T b where +-- MkT1 :: Int -> T Int + +-- data T = Int `MkT` Int +-- | MkT2 + +-- data T a where +-- Int `MkT` Int :: T Int + data ConDecl name = ConDecl { con_name :: Located name -- Constructor name; this is used for the @@ -560,7 +573,6 @@ pprConDecl (ConDecl con expl tvs cxt details (ResTyGADT res_ty)) where ppr_details (PrefixCon arg_tys) = dcolon <+> ppr (foldr mk_fun_ty res_ty arg_tys) ppr_details (RecCon fields) = ppr fields <+> dcolon <+> ppr res_ty - ppr_details (PrefixCon _) = pprPanic "pprConDecl" (ppr con) mk_fun_ty a b = noLoc (HsFunTy a b) @@ -709,8 +721,8 @@ instance Outputable ForeignImport where ptext SLIT("dynamic") pprCEntity _ _ (CWrapper) = ptext SLIT("wrapper") -- - pprLib lib | nullFastString lib = empty - | otherwise = char '[' <> ppr lib <> char ']' + pprLib lib | nullFS lib = empty + | otherwise = char '[' <> ppr lib <> char ']' instance Outputable ForeignExport where ppr (CExport (CExportStatic lbl cconv)) =