Подтвердить что ты не робот

Как установить параметры ghci для замены кабала?

У меня есть проект haskell, который я компилирую с -Werror по умолчанию. Это означает, что при запуске cabal repl он запускается с включенной опцией -Werror. Это означает, что, например, когда я оцениваю 2 + 2, я получаю следующее сообщение об ошибке:

<interactive>:2:3: Warning:
Defaulting the following constraint(s) to type `Integer'
  (Num a0) arising from a use of `+'
In the expression: 2 + 2
In an equation for `it': it = 2 + 2

Так что мне нужно включить параметр -w или, возможно, -Wwarn по умолчанию для cabal repl. Как мне это сделать? Также каковы флаги по умолчанию для ghci?

4b9b3361

Ответ 1

Вы можете установить параметры GHCi в файле ~/.ghci:

:set -w

Это переопределяет -Wall из cabal repl для меня.

Я понимаю, что ghci имеет одинаковые значения по умолчанию a ghc: он как вызов компилятора без флагов. cabal repl получает свои значения по умолчанию из вашего файла .cabal (например, ghc-options: -Wall), но это переопределяется вашим файлом ~/.ghci.

Вы также можете создать файл .ghci в каталоге проекта, где есть настройки для каждого проекта. Однако это, похоже, неловко взаимодействует с моим глобальным файлом ~/.ghci: добавление set -Wall не отменяет :set -w от глобального. Я не уверен, что это поведение предназначено, или я просто что-то недопонимаю.