GHC 8.10 enables -Wderiving-defaults as part of -Wall. It’s a useful warning so we want to keep it. However, proto3-suite generates code that triggers this warning. Now ideally, we would just switch proto3-suite over to DerivingStrategies but unfortunately haskell-src, the library used to generate the Haskell source, does not support that. So instead, we disable the warning on a per file basis. The warning only exists in GHC >= 8.10 so we cannot upstream this atm. diff --git a/src/Proto3/Suite/DotProto/Generate.hs b/src/Proto3/Suite/DotProto/Generate.hs index ef16ba4..b62ee6b 100644 --- a/src/Proto3/Suite/DotProto/Generate.hs +++ b/src/Proto3/Suite/DotProto/Generate.hs @@ -128,6 +128,7 @@ renderHsModuleForDotProto extraInstanceFiles dotProto importCtxt = do {-# OPTIONS_GHC -fno-warn-name-shadowing #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} {-# OPTIONS_GHC -fno-warn-missing-export-lists #-} + {-# OPTIONS_GHC -Wno-deriving-defaults #-} -- | Generated by Haskell protocol buffer compiler. DO NOT EDIT! |]