- get (HsNumTy n) = emptyNameSet
- get (HsTyVar tv) = unitNameSet tv
- get (HsSpliceTy _) = emptyNameSet -- Type splices mention no type variables
- get (HsKindSig ty k) = getl ty
- get (HsForAllTy _ tvs
- ctxt ty) = (extractHsCtxtTyNames ctxt
- `unionNameSets` getl ty)
- `minusNameSet`
- mkNameSet (hsLTyVarNames tvs)
+ get (HsRecTy flds) = extractHsTyNames_s (map cd_fld_type flds)
+ get (HsNumTy _) = emptyNameSet
+ get (HsTyVar tv) = unitNameSet tv
+ get (HsSpliceTy _ fvs _) = fvs
+ get (HsQuasiQuoteTy {}) = emptyNameSet
+ get (HsKindSig ty _) = getl ty
+ get (HsForAllTy _ tvs
+ ctxt ty) = (extractHsCtxtTyNames ctxt
+ `unionNameSets` getl ty)
+ `minusNameSet`
+ mkNameSet (hsLTyVarNames tvs)
+ get (HsDocTy ty _) = getl ty
+ get (HsCoreTy {}) = emptyNameSet -- This probably isn't quite right
+ -- but I don't think it matters