Skip to content

Remove old `-Wcompat` flags

There seem to be many flags in -Wcompat that are out of date.

This ticket is for the task of going through them, deciding if they are out of date, and removing them from -Wcompat. The current set is:

  • -Wsemigroup
  • -Wnoncanonical-monoid-instances
  • -Wnoncanonical-monad-instances
  • -Wcompat-unqualified-imports
  • -Wtype-equality-out-of-scope
  • -Wimplicit-rhs-quantification
  • -Wdeprecated-type-abstractions

There is a real question about whether -Wcompat is useful at all; see the discussion starting here. If we end up with no flags in -Wcompat, that would add evidence to that case.

In general -Wcompat should be used only for warnings where the user cannot adapt their code with the current GHC. If the user can adapt their code, the warning should be in -Wdefault.

Edited by Simon Peyton Jones
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information