我在haskell-stack項目上使用GHC。我想解除錯誤字段的警告,直到出現編譯錯誤。如何將遺漏字段警告更改爲GHC中的錯誤
我試圖做到以下,但它不起作用。
你能告訴如何解除缺少的字段警告到編譯錯誤嗎?
我在haskell-stack項目上使用GHC。我想解除錯誤字段的警告,直到出現編譯錯誤。如何將遺漏字段警告更改爲GHC中的錯誤
我試圖做到以下,但它不起作用。
你能告訴如何解除缺少的字段警告到編譯錯誤嗎?
這隻適用於GHC 8.2.1及以上版本。如果您使用的是stack
,則當前的LTS解析器僅在8.0.2上。要麼更新您的GHC(在stack
中,這將設置爲compiler: ghc-8.2.1
),要麼只是將全部警告與-Werror -Wmissing-fields
一起發生錯誤,並且保持緊張狀態,直到功能更廣泛可用。 (如果你觸發另一個警告,比如說missing-methods
,那麼會保留前者的警告,但後者會成爲後者的錯誤。)
只是使字段嚴格。這是一個很好的做法,因爲它有助於避免空間泄漏並可導致其他優化。如果你不真的依賴懶惰,你可以將字段轉換爲嚴格。
非常感謝您提供非常有用的信息!目前我正在使用LTS Haskell 9.1(ghc-8.0.2)。 – redstone