+ {-
+ Special case to handle C{}, where C is a constructor
+ that hasn't got any labelled fields - the Haskell98 report
+ doesn't seem to make that constraint (not that I think it
+ should).
+ -- sof 5/99
+ -}
+ pats
+ | null con_flabels = map (WildPat) con_arg_tys'
+ | otherwise = map mk_pat tagged_arg_tys