Admin message

Due to a large amount of spam we do not allow new users to create repositories, they are "external" users. If you are a new user and want to create a repository, for example for forking GHC, open a new issue on ghc/ghc using the "get-verified" issue template

DerivingStrategies defaulting warning has no associated enable/suppress flag
When `DeriveAnyClass` and `GeneralizedNewtypeDeriving` are enabled together, an instance that could be derived with either one defaults to `DeriveAnyClass` and throws a warning to that effect. There is currently no flag to suppress that warning (it appears even with `-w`). In the presence of `DerivingStrategies`, it seems desirable to be able to suppress this. Proposed flag to control it: `-Wderiving-defaults`, after the pattern of `-Wtype-defaults`. This flag should be part of the default warning set, as without `DerivingStrategies` it remains a bad idea to have both newtype and anyclass active. Minimal example (thanks RyanGIScott): ``` {-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} module Bug where class C a newtype T a = MkT a deriving C ``` ``` $ /opt/ghc/8.6.1/bin/ghci Bug.hs GHCi, version 8.6.1: http://www.haskell.org/ghc/ :? for help Loaded GHCi configuration from /home/rgscott/.ghci [1 of 1] Compiling Bug ( Bug.hs, interpreted ) Bug.hs:6:30: warning: • Both DeriveAnyClass and GeneralizedNewtypeDeriving are enabled Defaulting to the DeriveAnyClass strategy for instantiating C • In the newtype declaration for ‘T’ | 6 | newtype T a = MkT a deriving C | ^ Ok, one module loaded. ```
issue