X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fparser%2FRdrHsSyn.lhs;h=c29f23a298b0f11a79990fdf057596caa78dff62;hp=ddff68f5761ef3650fdb8d871fa08d55ccee09c1;hb=102b73a3f2a2f63d3835726be625dca8053dd88c;hpb=bea2ece06bbeab1d8abbde420b2fff383edd34be diff --git a/compiler/parser/RdrHsSyn.lhs b/compiler/parser/RdrHsSyn.lhs index ddff68f..c29f23a 100644 --- a/compiler/parser/RdrHsSyn.lhs +++ b/compiler/parser/RdrHsSyn.lhs @@ -704,8 +704,8 @@ checkAPat loc e = case e of ExplicitTuple es b -> mapM (\e -> checkLPat e) es >>= \ps -> return (TuplePat ps b placeHolderType) - RecordCon c _ fs -> mapM checkPatField fs >>= \fs -> - return (ConPatIn c (RecCon (map (uncurry mkRecField) fs))) + RecordCon c _ (HsRecordBinds fs) -> mapM checkPatField fs >>= \fs -> + return (ConPatIn c (RecCon (map (uncurry mkRecField) fs))) -- Generics HsType ty -> return (TypePat ty) _ -> patFail loc @@ -872,9 +872,9 @@ mkRecConstrOrUpdate mkRecConstrOrUpdate (L l (HsVar c)) loc fs | isRdrDataCon c = return (RecordCon (L l c) noPostTcExpr fs) -mkRecConstrOrUpdate exp loc fs@(_:_) +mkRecConstrOrUpdate exp loc fs@(HsRecordBinds (_:_)) = return (RecordUpd exp fs placeHolderType placeHolderType) -mkRecConstrOrUpdate _ loc [] +mkRecConstrOrUpdate _ loc (HsRecordBinds []) = parseError loc "Empty record update" mkInlineSpec :: Maybe Activation -> Bool -> InlineSpec