-simplify_pat (RecPat id ty []) = ConPat id ty [wild_pat]
- where
- wild_pat = WildPat gt
- gt = panic "Check.symplify_pat: gessing gt"
-simplify_pat (RecPat id ty idps) = ConPat id ty pats
- where
- pats = map (\ (id,p,_)-> simplify_pat p) idps
+simplify_pat (TuplePat ps False)
+ = ConPat (unboxedTupleCon arity)
+ (mkUnboxedTupleTy arity (map outPatType ps)) [] []
+ (map simplify_pat ps)
+ where
+ arity = length ps
+
+simplify_pat (RecPat id ty tvs dicts [])
+ = ConPat id ty tvs dicts [wild_pat]
+ where
+ wild_pat = WildPat gt
+ gt = panic "Check.symplify_pat: gessing gt"
+
+simplify_pat (RecPat id ty tvs dicts idps)
+ = ConPat id ty tvs dicts pats
+ where
+ pats = map (\ (id,p,_)-> simplify_pat p) idps