More precise LANGUAGE pragma when forall is used
In all cases when a user attempts to use the forall keyword, GHC suggests enabling RankNTypes. This seems suboptimal, since a more direct way to enable just the syntax is ExplicitForAll. So maybe we should just suggest that instead.
In some cases, the user will immediately thereafter have to add RankNTypes, or Rank2Types, or ExistentialQuantification, etc. So it would be more user friendly to suggest the appropriate extension directly. I don't know how much harder this would be to do.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 8.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | low |
| Resolution | Unresolved |
| Component | Compiler (Type checker) |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |