Reconsidering -Wall and -Wcompat

Boespflug, Mathieu m at tweag.io
Mon Feb 15 11:04:43 UTC 2016


>> * include -Wcompat and -Wall, but make it "magic" so that -Wcompat
>> never causes a build to fail even when users set -Wall -Werror.
>
> Tbh, I don't like the "magic" part at all. In fact, I currently rely on
> `-Wcompat -Werror` triggering an error in my builds.

Point is - if -Wall implies -Wcompat that's simply not an option for
many companies, who have a huge codebase, turn on -Wall -Werror as a
matter of policy yet need the time granted by the 3 release policy to
adapt their codebase.

> To address the concern more generally is what
>
>   https://ghc.haskell.org/trac/ghc/ticket/11219
>
> aims to, but without any magic. Then you'd say
>
>   -Wall -Werror -Wno-error=compat
>
> if -Wcompat implied by -Wall.

That sounds good. -Wno-error=compat should work fine.

> But we ran out of time for GHC 8.0, so #11219 will have to wait till GHC 8.2.

Then is it reasonable to prevent -Wall -Werror from failing builds
because of -Wcompat through some kind of special casing in GHC 8.0, to
be generalized via -Wno-error in GHC 8.2?


More information about the ghc-devs mailing list