• David Feuer's avatar
    Upgrade UniqSet to a newtype · cbe569a5
    David Feuer authored
    The fundamental problem with `type UniqSet = UniqFM` is that `UniqSet`
    has a key invariant `UniqFM` does not. For example, `fmap` over
    `UniqSet` will generally produce nonsense.
    * Upgrade `UniqSet` from a type synonym to a newtype.
    * Remove unused and shady `extendVarSet_C` and `addOneToUniqSet_C`.
    * Use cached unique in `tyConsOfType` by replacing
      `unitNameEnv (tyConName tc) tc` with `unitUniqSet tc`.
    Reviewers: austin, hvr, goldfire, simonmar, niteria, bgamari
    Reviewed By: niteria
    Subscribers: thomie
    Differential Revision: https://phabricator.haskell.org/D3146
GraphColor.hs 15 KB