-tcPat tc_bndr (LitPat lit@(HsLitLit s _)) pat_ty
- -- cf tcExpr on LitLits
- = zapExpectedType pat_ty `thenM` \ pat_ty' ->
- tcLookupClass cCallableClassName `thenM` \ cCallableClass ->
- newDicts (LitLitOrigin (unpackFS s))
- [mkClassPred cCallableClass [pat_ty']] `thenM` \ dicts ->
- extendLIEs dicts `thenM_`
- returnM (LitPat (HsLitLit s pat_ty'), emptyBag, emptyBag, [])
-
-tcPat tc_bndr pat@(LitPat lit@(HsString _)) pat_ty
- = zapExpectedType pat_ty `thenM` \ pat_ty' ->
- unifyTauTy pat_ty' stringTy `thenM_`
- tcLookupId eqStringName `thenM` \ eq_id ->
- returnM (NPatOut lit stringTy (HsVar eq_id `HsApp` HsLit lit),
+tc_pat tc_bndr pat@(LitPat lit@(HsString _)) pat_ty
+ = zapExpectedType pat_ty liftedTypeKind `thenM` \ pat_ty' ->
+ unifyTauTy pat_ty' stringTy `thenM_`
+ tcLookupId eqStringName `thenM` \ eq_id ->
+ returnM (NPatOut lit stringTy (nlHsVar eq_id `HsApp` nlHsLit lit),