有没有办法在模块或.hs
文件中自动查找未使用的函数(和常量)?具体来说,我指的是当前模块/文件的导出列表中的函数(直接或间接)未使用的那些函数。
我知道,例如Emacs haskell模式能够警告未使用的import
S,如下所示:
The import of XXX is redundant
是否有类似的工具或方法来查找未使用的功能?
注意:我知道这可以通过删除一些代码手动完成,看看它是否仍然编译。但这是一个单调乏味的过程。
答案 0 :(得分:6)
以下是一些相关的ghc -W
标志:
-Wunused-binds
-Wunused-do-bind
-Wunused-foralls
-Wunused-imports
-Wunused-local-binds
-Wunused-matches
-Wunused-pattern-binds
-Wunused-top-binds
-Wunused-type-patterns
或者只使用-Wall
。您可以使用ghc --show-options
获取完整的ghc标记列表。