【问题标题】:Make HLint ignore parse error due to multi-way if?如果多路导致 HLint 忽略解析错误?
【发布时间】:2014-05-18 19:52:08
【问题描述】:

我正在使用MultiWayIf 语言扩展。虽然我喜欢 HLint(我使用的是 v1.8.61 版本),但不幸的是,HLint 似乎不知道这个扩展,并且它报告多路 ifs 作为解析错误: Warning: Parse error: |

HLint 手册 (http://community.haskell.org/~ndm/darcs/hlint/hlint.htm) 描述了如何使用 pragma 指示要忽略的建议;但是,由于解析错误,这似乎不适用于警告。

有没有办法告诉 HLint 忽略解析错误警告? 谢谢!

【问题讨论】:

  • 它与什么版本的 haskell-src-exts 链接? HSE 的变更日志说它在 1.15 中增加了对 MultiWayIf 的支持。

标签: haskell hlint


【解决方案1】:

你可以运行:

hlint "--ignore=Parse error" MyFile.hs

有一个测试表明此调用在HLint test suite 中有效。

请注意,一旦出现解析错误,您将不会从文件中获得任何其他提示,因为 HLint 在文件被解析之前无法对文件进行操作。

但是,如果您升级到 haskell-src-exts-1.15 或更高版本,然后重新安装 HLint,它应该可以解析多路 - 如果没问题。如果没有,请report a bug

【讨论】:

  • 升级 haskell-src-exts 并重新安装 HLint (cabal install --reinstall hlint) 对我有用。非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-16
  • 1970-01-01
  • 2015-11-02
相关资源
最近更新 更多