微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

关闭 AutoDeriveTypeable

如何解决关闭 AutoDeriveTypeable

最近版本的 GHC 自动为所有数据类型派生 Timber.plant() 实例。我想关闭它。以前,Typeable 语言扩展用于启用此功能,因此我认为如果我使用 AutoDeriveTypeable 语言编译指示,就可以解决问题。然而,即使 GHC 没有发出关于未知语言编译指示的错误NoAutoDeriveTypeable 似乎没有任何影响,因为我可以在生成的 Core 中看到与 NoAutoDeriveTypeable 相关的 CAF。

解决方法

There is a DynFlag for this,结果是 it can be turned on with the -dno-typeable-binds compile-time flag。根据文档,此标志仅用于调试目的:

-dno-typeable-binds

这避免为模块和类型生成与 Typeable 相关的绑定。这在调试时很有用,因为它给出了 较小的模块和转储,但如果你尝试编译器会恐慌 使用您使用此标志构建的事物的 Typeable 实例。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。