• Simon Peyton Jones's avatar
    Refactor named wildcards (again) · 575a98e4
    Simon Peyton Jones authored
    Michal's work on #10982, #11098, refactored the handling of named
    wildcards by making them more like ordinary type variables.
    This patch takes the same idea to its logical conclusion, resulting
    in a much tidier, tighter implementation.
    Read Note [The wildcard story for types] in HsTypes.
     * Named wildcards are ordinary type variables, throughout
     * HsType no longer has a data constructor for named wildcards
       (was NamedWildCard in HsWildCardInfo).  Named wildcards are
       simply HsTyVars
     * Similarly named wildcards disappear from Template Haskell
     * I refactored RnTypes to avoid polluting LocalRdrEnv with something
       as narrow as named wildcards.  Instead the named wildcard set is
       carried in RnTyKiEnv.
    There is a submodule update for Haddock.
RnTypes.hs 67 KB