Skip to content
  • Ryan Scott's avatar
    Fix #15941 by only special-casing visible infix applications · 984b75de
    Ryan Scott authored
    Summary:
    The iface pretty-printer had a special case for an
    application of an infix type constructor to two arguments. But this
    didn't take the visibilities of the arguments into account, which
    could lead to strange output like `@{LiftedRep} -> @{LiftedRep}` when
    `-fprint-explicit-kinds` was enabled (#15941). The fix is relatively
    straightforward: simply plumb through the visibilities of each
    argument, and only trigger the special case for infix applications
    if both arguments are visible (i.e., required).
    
    Test Plan: make test TEST=T15941
    
    Reviewers: goldfire, bgamari, monoidal
    
    Reviewed By: goldfire, monoidal
    
    Subscribers: simonpj, rwbarton, carter
    
    GHC Trac Issues: #15941
    
    Differential Revision: https://phabricator.haskell.org/D5375
    984b75de