我在用Haskell写玩具语言。我正在使用Alex生成扫描仪。每次使用cabal构建项目时,都会收到以下警告:
dist/build/optimiser/optimiser-tmp/Lexer.hs:465:1: Warning:
Tab character
dist/build/optimiser/optimiser-tmp/Lexer.hs:466:1: Warning:
Tab character
dist/build/optimiser/optimiser-tmp/Lexer.hs:467:1: Warning:
Tab character
dist/build/optimiser/optimiser-tmp/Lexer.hs:471:1: Warning:
Tab character
dist/build/optimiser/optimiser-tmp/Lexer.hs:472:1: Warning:
Tab character
(plus about 10 more of these warnings)
似乎由alex生成的扫描仪使用制表符而不是空格,ghc的默认行为是警告用户。
有谁知道一种强制Alex使用空格或抑制ghc发出的警告的方法(通过cabal)?
最佳答案
正如评论中提到的那样,这可能是在alex master中修复的。在可以使用固定版本之前,您可以尝试添加
ghc-options: -fno-warn-tabs
到您的.cabal文件。
关于haskell - Haskell/Alex : Warning: Tab character,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30236635/