根据https://github.com/ocaml/ocaml/pull/1110,OCaml 4.08 及更高版本会针对未使用的模块打开发出警告,即使它们是用open!
. open! Foo
这与使用来确定以下代码将在模块上下文中的常见做法产生摩擦Foo
(无论是否从内部使用任何东西Foo
)。此外,由于dune
默认情况下将所有警告视为致命错误,这将导致默认dev
配置文件中的沙丘构建失败,并出现以下错误
$ dune build
File "lib/mylib.ml", line 1, characters 0-10:
1 | open! Core
^^^^^^^^^^
Error (warning 66): unused open! Core.
如何禁用此警告和致命错误?