Skip to content
  • Sebastian Graf's avatar
    Use FlexibleInstances for `Outputable (* p)` instead of match-all instances... · e951f219
    Sebastian Graf authored and Marge Bot's avatar Marge Bot committed
    Use FlexibleInstances for `Outputable (* p)` instead of match-all instances with equality constraints
    
    In #17304, Richard and Simon dicovered that using `-XFlexibleInstances`
    for `Outputable` instances of AST data types means users can provide orphan
    `Outputable` instances for passes other than `GhcPass`.
    
    Type inference doesn't currently to suffer, and Richard gave an example
    in #17304 that shows how rare a case would be where the slightly worse
    type inference would matter.
    
    So I went ahead with the refactoring, attempting to fix #17304.
    e951f219