GHC的最新版本会自动派生所有数据类型的Typeable
实例。我想关闭它。以前,AutoDeriveTypeable
语言扩展用于启用此功能,所以我想如果我使用NoAutoDeriveTypeable
语言杂注,那就可以了。然而,尽管GHC没有发出关于未知语言杂注的错误,但NoAutoDeriveTypeable
似乎没有任何影响,因为我可以在生成的Core中看到与Typeable
相关的CAF。
有一个DynFlag
,它可以用-dno-typeable-binds
编译时标志打开。根据文档,此标志仅用于调试目的:
-dno-typeable-binds
这样可以避免为模块和类型生成与
Typeable
相关的绑定。这在调试时很有用,因为它提供较小的模块和转储,但如果您尝试使用使用此标志构建的事物的Typeable
实例。