2017-10-21 51 views

回答

7

這隻適用於GHC 8.2.1及以上版本。如果您使用的是stack,則當前的LTS解析器僅在8.0.2上。要麼更新您的GHC(在stack中,這將設置爲compiler: ghc-8.2.1),要麼只是將全部警告與-Werror -Wmissing-fields一起發生錯誤,並且保持緊張狀態,直到功能更廣泛可用。 (如果你觸發另一個警告,比如說missing-methods,那麼會保留前者的警告,但後者會成爲後者的錯誤。)

+0

非常感謝您提供非常有用的信息!目前我正在使用LTS Haskell 9.1(ghc-8.0.2)。 – redstone

0

只是使字段嚴格。這是一個很好的做法,因爲它有助於避免空間泄漏並可導致其他優化。如果你不真的依賴懶惰,你可以將字段轉換爲嚴格。

相關問題