diff options
author | Gabriel Scherer <gabriel.scherer@gmail.com> | 2016-06-28 14:45:37 -0400 |
---|---|---|
committer | Gabriel Scherer <gabriel.scherer@gmail.com> | 2016-06-28 14:52:36 -0400 |
commit | 1cc70be070e1df522b1539892958496a77710331 (patch) | |
tree | 37fc03bb7538f7453160f9a3245f89863b96174a /interp/coqlib.mli | |
parent | d24997ae295ac4bc80b77273e5499b472f193939 (diff) |
fix coqide double module linking (error on OCaml 4.03)
Linking the same module twice in OCaml can have problematic unintended
consequences and lead to hard-to-understand bugs, see
http://caml.inria.fr/mantis/view.php?id=4231
http://caml.inria.fr/mantis/view.php?id=5461
OCaml has long warned when double-linking happens
Warning 31: files FOO and BAR both define a module named Baz
In 4.03 this error was turned into a warning by default.
Coqide does double-linking by passing both
xml_{lexer,parser,printer}.cmo and lib/clib.cma that already contains
these compilation units to bin/coqide.byte. To fix compilation of
Coqide under 4.03, the present patch removes the .cmo from the
command-line arguments.
P.S.: I checked that this patch applies cleanly to the current trunk
(b161ad97fdc01ac8816341a089365657cebc6d2b). It should also be possible
to add it as a patch on top of the 8.5 archives (for example those
distributed through OPAM) to make them compile under 4.03.
Diffstat (limited to 'interp/coqlib.mli')
0 files changed, 0 insertions, 0 deletions