Skip to content
Snippets Groups Projects
Forked from Glasgow Haskell Compiler / GHC
287 commits behind the upstream repository.
Vladislav Zavialov's avatar
Vladislav Zavialov authored
1. Print the '@' symbol before invisible patterns and improve phrasing:

      T24557c.hs:8:4: error: [GHC-11983]
     -    Invisible type pattern pat is not allowed here
     +    Illegal invisible type pattern: @pat
     +    An invisible type pattern must occur in an argument position.

2. Use a single error code for all type abstractions deemed illegal
   due to the TypeAbstractions extension being disabled.

   Before this change:
     * [GHC-78249] was used in function equations, lambdas
     * [GHC-17916] was used in constructor patterns

   After this change:
     * [GHC-78249] is used to report all illegal type abstractions
     * [GHC-17916] is no longer used

   There was no reason for both error codes to exist and this distinction
   was a source of complexity in GHC/Tc/Errors/* and GHC/Rename/Pat.hs

3. Group the different "invisible type pattern" error constructors
   under a single parent constructor, TcRnIllegalInvisibleTypePattern
   containing BadInvisPatReason
6acaff2b
History