如何导入导致ghci编译器无法编译的模块,因为它们是安全的?我正在尝试使用Debug.Trace,但我被编译器告知它不安全。
答案 0 :(得分:3)
您正在编译的模块顶部是否有{-# LANGUAGE Safe #-}
个编译指示?当然导入Debug.Trace
后面不能这样做。如果没有,可能是-XSafe
正在其他地方使用,例如在你打电话给ghci的方式?此外,un Safe
ness应该是递归的,因此如果您正在编译具有{-# LANGUAGE Safe #-}
但导入正在修改的模块的模块,那么同样会出现问题。