• Ryan Scott's avatar
    Filter out invisible kind arguments during TH reification · 02a5c580
    Ryan Scott authored
    Previously, all kind arguments were being reified, which would cause
    something like this:
    type Id a = a
    data Proxy (a :: Id k) = Proxy
    to output
    data Proxy (a :: Id * k) = Proxy
    when `Proxy`'s `Info` is reified. The fix is simple: simply call
    `filterOutInvisibleTypes` on the kind arguments of a kind synonym
    Fixes #11463.
    Test Plan: ./validate
    Reviewers: austin, bgamari, goldfire
    Reviewed By: goldfire
    Subscribers: thomie
    Differential Revision: https://phabricator.haskell.org/D2081
    GHC Trac Issues: #11463
all.T 16.1 KB