有没有我可以为GHC配置一些默认标志的地方?我想,即GHC总是假设我想要-fwarn-incomplete-patterns
旗帜.这个页面给出了一个有用的标志列表,并指出它们中的一些默认情况下处于打开状态,但是我还想更改系统的默认值.
我目前正在研究OS X,但我在家里使用Debian,Arch Linux和Windows 8.1,因此任何平台的解决方案都会有所帮助.
Ste*_*ehl 10
除了走样shell命令ghc
来ghc -fwarn-incomplete-patterns
,我不认为有办法做到在全球范围,或者是否将是可取的全球做,因为与阴谋编译外部库时,它可能会产生警告,一个庞大的它.可能最好一次做这个项目或只用GHCi:
项目的任何cabal文件中都有一个ghc-options部分.
library
...
ghc-options:
-fwarn-tabs
-fwarn-missing-local-sigs
-fwarn-incomplete-patterns
-fwarn-incomplete-uni-patterns
Run Code Online (Sandbox Code Playgroud)
对于全局GHCi,可以在〜/ .ghc/ghci.conf中添加以下行
:set -fwarn-incomplete-uni-patterns
Run Code Online (Sandbox Code Playgroud)
添加ghc-options: -fwarn-incomplete-patterns
到program-default-options
您的部分~/.cabal/config
:
[...]
program-default-options
...
ghc-options: -fwarn-incomplete-patterns
...
Run Code Online (Sandbox Code Playgroud)
这仅适用于Cabalised项目(即当您使用cabal build/install/[...]
而不是ghc --make SomeFile.hs
手动运行时)并且需要相当近期cabal-install
(> = 1.18).