- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试禁用 HLint 给我的一些警告。 According to docs我应该能够在我的文件顶部添加一个 pragma。所以我尝试了以下方法:
{-# HLINT ignore #-}
module Main where
然而,这在运行 stack build
时给我一个错误:
/Users/nene/somedir/src/Main.hs:1:1: warning: [-Wunrecognised-pragmas]
Unrecognised pragma
|
1 | {-# HLINT ignore #-}
| ^^^
似乎 pragma 在我的编辑器(带有“Haskell”扩展名的 VSCode)中确实有效,但在运行 stack
时无法识别。
最佳答案
如果你想在没有任何警告的情况下使用 pragma,你可以像这样使用 ANN
pragma:
{-# ANN module "HLint: ignore" #-}
但是我建议使用常规注释而不是编译指示:
{- HLINT ignore -}
我更喜欢常规注释,因为它们不像 pragma 那样有奇怪的规则。事实上the documentation备注:
For
ANN
pragmas it is important to put them after any import statements. If you have theOverloadedStrings
extension enabled you will need to give an explicit type to the annotation, e.g.{-# ANN myFunction ("HLint: ignore" :: String) #-}
. TheANN
pragmas can also increase compile times or cause more recompilation than otherwise required, since they are evaluated byTemplateHaskell
.For
{-# HLINT #-}
pragmas GHC may give a warning about an unrecognised pragma, which can be suppressed with-Wno-unrecognised-pragmas
.
关于haskell - Haskell 中无法识别的 HLINT pragma,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65742311/
我是一名优秀的程序员,十分优秀!