如何使用ocamlopt将模块打包到具有相同名称的模块中?

时间:2016-08-03 01:48:49

标签: compilation nested ocaml stack-overflow packing

在OCaml中,我可以创建具有相同名称的嵌套模块的模块。

module X = struct
  module X = struct
    let x = 42
  end
end

我也可以用 ocamlc

打包
ocamlc -for-pack X -c X.ml

mkdir tmp
mv X.cmo tmp/X.cmo
mv X.cmi tmp/X.cmi

ocamlc -pack -o X.cmo t/X.cmo

但是当我尝试使用 ocamlopt 时,我有:

  

致命错误:异常堆栈溢出

make文件运行后。

如何使用 ocamlopt 将模块打包到具有相同名称的模块中?

1 个答案:

答案 0 :(得分:1)

这是ocamlopt中的一个错误。请向上游报告。

如果将模块X打包到包X中是不允许的,那么编译器应该这样说。如果它被允许那么它应该工作。无论哪种方式,堆栈溢出都是一个错误。