首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Haskell (GHC)中启用死代码警告

如何在Haskell (GHC)中启用死代码警告
EN

Stack Overflow用户
提问于 2014-09-03 16:17:40
回答 1查看 649关注 0票数 8

有些语言(如Go & Rust)要求程序员勤奋地从源代码中删除所有死代码。这在代码可维护性和可读性方面有好处,如果对某些用户来说有点极端的话。

如何在Haskell中启用此功能?(有可能吗?)例如,在下面的代码中,我希望url2被标记为死代码,因为它不在main中使用。

代码语言:javascript
复制
url1 = "http://stackoverflow.com"
url2 = "http://stackexchange.com"

main = print url1

我看到了对一些编译器标志(例如-fwarn-unused-binds-fwarn-name-shadowing-fwarn-hi-shadowing)的引用,但它们似乎都没有实现我想要的结果。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-03 16:30:30

如果适当地限制来自模块的导出列表,则GHC将将url2报告为-fwarn-unused-binds死代码,例如:

代码语言:javascript
复制
module Main(main) where
...

如果您的模块头只是

代码语言:javascript
复制
module Main where

然后,您将隐式导出所有内容,因此不能认为任何顶级绑定都是未使用的。

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25649143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档