ghc能否以某种方式被说服将某些类型的警告视为错误,将其他警告视为警告,同时仍然报告它们?
我希望,这可能是这样的:
ghc -Werror -fwarn-missing-methods -Wwarn -fwarn-missing-signatures
,但我没有运气。 (我认为gcc也不支持这个。)
ghc能否以某种方式被说服将某些类型的警告视为错误,将其他警告视为警告,同时仍然报告它们?
我希望,这可能是这样的:
ghc -Werror -fwarn-missing-methods -Wwarn -fwarn-missing-signatures
,但我没有运气。 (我认为gcc也不支持这个。)
不,这是一个全有或全无的开关。但是,你可以做到
ghc -Werror -fwarn-missing-methods -fno-warn-missing-signatures
虽然这会导致GHC完全吞下警告,这可能不是你想要的。
不,这是一个全有或全无的开关。但是,你可以做到
ghc -Werror -fwarn-missing-methods -fno-warn-missing-signatures
虽然这会导致GHC完全吞下警告,这可能不是你想要的。
请注意,启动GHC 8.2.1,此功能存在!这是由Trac票证描述的 #11219 现在你可以做到 ghc -Werror=missing-methods -Wmissing-signatures
!
如果这非常令人担忧,您可以考虑在每个模块的基础上启用和禁用警告。所以在某些模块中你会有:
{-# OPTIONS_GHC -Wall -Werror #-}
在这里谈论一切,而在其他人:
{-# OPTIONS_GHC -w -Werror -fwarn-missing-methods #-}
只启用一些错误的东西。