You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When I declare several coq.extraction stanzas in a single dune file producing different OCaml modules in Dune 3.7 and later, I expect dune build to work, as it did in (at least) Dune 3.5 and 3.6.
Actual Behavior
After running dune build I get a "multiple rule" error, like the following:
Error: Multiple rules generated for _build/default/DuneExtraction.theory.d:
- dune:1
- dune:5
Reproduction
Consider a minimal Coq extraction project which produces two modules, with the following dune-project file:
Version of ocaml (output of ocamlc --version): 4.11.2
Operating system (distribution and version): Ubuntu 22.04 LTS
Additional information
This is independent of the Coq version used, the replication of the error for Dune 3.7.1 and 3.8.2 (and absence of error for 3.5.0 and 3.6.1) was done on Coq 8.15.1.
Producing several OCaml modules by extraction from the same dune file is a very convenient feature and if not supported, necessitates reorganizing some projects in an inconvenient way (lots of subdirectories).
This issue was invited for submission by @Alizter.
Expected Behavior
When I declare several
coq.extractionstanzas in a singledunefile producing different OCaml modules in Dune 3.7 and later, I expectdune buildto work, as it did in (at least) Dune 3.5 and 3.6.Actual Behavior
After running
dune buildI get a "multiple rule" error, like the following:Error: Multiple rules generated for _build/default/DuneExtraction.theory.d: - dune:1 - dune:5Reproduction
Consider a minimal Coq extraction project which produces two modules, with the following
dune-projectfile:And the following
dunefile:And the Coq file
Extr1.v:And the Coq file
Extr2.v:Up to and including Dune 3.6, this works fine with
dune build. However, for Dune 3.7 and forward, including Dune 3.8.2, I get the following error:$ dune build Error: Multiple rules generated for _build/default/DuneExtraction.theory.d: - dune:1 - dune:5Specifications
dune(output ofdune --version): 3.7.1ocaml(output ofocamlc --version): 4.11.2Additional information
dunefile is a very convenient feature and if not supported, necessitates reorganizing some projects in an inconvenient way (lots of subdirectories).This issue was invited for submission by @Alizter.