• Ryan Scott's avatar
    Fix #16299 by deleting incorrect code from IfaceSyn · 8b476d82
    Ryan Scott authored
    GHCi's `:info` command was pretty-printing Haskell98-style data types
    with explicit return kinds if the return kind wasn't `Type`. This
    leads to bizarre output like this:
    λ> :i (##)
    data (##) :: TYPE ('GHC.Types.TupleRep '[]) = (##)
            -- Defined in ‘GHC.Prim’
    Or, with unlifted newtypes:
    λ> newtype T = MkT Int#
    λ> :i T
    newtype T :: TYPE 'IntRep = MkT Int#
            -- Defined at <interactive>:5:1
    The solution is simple: just delete one part from `IfaceSyn` where
    GHC mistakenly pretty-prints the return kinds for non-GADTs.
IfaceSyn.hs 86.8 KB