{-# WArNING test,
  foo ["These are bad functions", "Really bad!"] #-}
test :: IO ()
test = pure ()

instance
  {-# WARNING "Don't use" #-}
  Show G1 where
  show = "G1"

deriving instance
  {-# WARNING "to be removed" #-} Eq G2
