Int-6ren">
gpt4 book ai didi

Haskell/GHC - "warn incomplete patterns"是否有任何中缀标签/编译指示

转载 作者:行者123 更新时间:2023-12-04 01:03:06 30 4
gpt4 key购买 nike

我正在寻找一种编译指示,它会针对特定的不完整模式发出警告。它会使编译器因以下(假设的)代码而失败:

{-# FAILIF incomplete-patterns #-}
f :: Int -> Int
f 0 = 0

我正在尝试使用箭头编写一个“编译器”,并且知道模式匹配是完整的将有助于隔离错误。谢谢!

最佳答案

您可以使用 -Wall 要求警告,包括不完整的模式。 :

{-# OPTIONS_GHC -Wall #-}

module A where

f :: Int -> Int
f 0 = 0

产量:
A.hs:6:1:
Warning: Pattern match(es) are non-exhaustive
In an equation for `f':
Patterns not matched: GHC.Types.I# #x with #x `notElem` [0#]

或者更具体地说,使用 -fwarn-incomplete-patterns代替 -Wall .

没有什么可以在每个表达式的基础上起作用:您目前仅限于每个模块的基础上。

关于Haskell/GHC - "warn incomplete patterns"是否有任何中缀标签/编译指示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5774603/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com