-
Notifications
You must be signed in to change notification settings - Fork 413
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This includes the following: - A [coqdep_flags] field in the [env] stanza (under [coq]). - A [coqdep_flags] field in the [coq.theory] stanza. Signed-off-by: Rodolphe Lepigre <[email protected]>
- Loading branch information
Rodolphe Lepigre
committed
Nov 4, 2024
1 parent
b409963
commit 7e7ed7d
Showing
15 changed files
with
139 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
type t = | ||
{ coq_flags : string list | ||
; coqdep_flags : string list | ||
; coqdoc_flags : string list | ||
} | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 2 additions & 0 deletions
2
test/blackbox-tests/test-cases/coq/coqdep-flags.t/dune-project
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
(lang dune 3.17) | ||
(using coq 0.10) |
4 changes: 4 additions & 0 deletions
4
test/blackbox-tests/test-cases/coq/coqdep-flags.t/dune.disabled
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
(env | ||
(_ | ||
(coq | ||
(coqdep_flags (:standard -w +all))))) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
By default the coqdep flags are empty, and missing files only lead to a simple | ||
warning. | ||
|
||
$ cp theories/dune.noflags theories/dune | ||
$ dune build theories/.basic.theory.d | ||
Warning: in file bar.v, library baz is required | ||
from root basic and has not been found in the loadpath! | ||
[module-not-found,filesystem,default] | ||
|
||
We define coqdep flags that turn all warnings into errors, which leads to the | ||
above warning being turned into an error. | ||
|
||
$ mv dune.disabled dune | ||
$ dune build theories/.basic.theory.d | ||
File "theories/dune", lines 1-2, characters 0-26: | ||
1 | (coq.theory | ||
2 | (name basic)) | ||
*** Error: in file bar.v, library baz is required | ||
from root basic and has not been found in the loadpath! | ||
[module-not-found,filesystem,default] | ||
[1] | ||
|
||
We then add the same flag (now duplicated) to the theory, which should not | ||
change anything. | ||
|
||
$ rm -f theories/dune | ||
$ cp theories/dune.flags theories/dune | ||
$ dune build theories/.basic.theory.d | ||
File "theories/dune", lines 1-3, characters 0-62: | ||
1 | (coq.theory | ||
2 | (name basic) | ||
3 | (coqdep_flags (:standard -w +all))) | ||
*** Error: in file bar.v, library baz is required | ||
from root basic and has not been found in the loadpath! | ||
[module-not-found,filesystem,default] | ||
[1] | ||
|
||
Finally we remove the toplevel dune file which sets the flags globally, but | ||
keep the theory-local flags, so the behavior does not change. | ||
|
||
$ rm -f dune | ||
$ dune build theories/.basic.theory.d | ||
File "theories/dune", lines 1-3, characters 0-62: | ||
1 | (coq.theory | ||
2 | (name basic) | ||
3 | (coqdep_flags (:standard -w +all))) | ||
*** Error: in file bar.v, library baz is required | ||
from root basic and has not been found in the loadpath! | ||
[module-not-found,filesystem,default] | ||
[1] | ||
|
||
Creating the missing file fixes the error. | ||
|
||
$ touch theories/baz.v | ||
$ dune build theories/.basic.theory.d |
4 changes: 4 additions & 0 deletions
4
test/blackbox-tests/test-cases/coq/coqdep-flags.t/theories/bar.v
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
From basic Require Import foo. | ||
From basic Require Import baz. | ||
|
||
Definition mynum (i : mynat) := 3. |
3 changes: 3 additions & 0 deletions
3
test/blackbox-tests/test-cases/coq/coqdep-flags.t/theories/dune.flags
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
(coq.theory | ||
(name basic) | ||
(coqdep_flags (:standard -w +all))) |
2 changes: 2 additions & 0 deletions
2
test/blackbox-tests/test-cases/coq/coqdep-flags.t/theories/dune.noflags
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
(coq.theory | ||
(name basic)) |
1 change: 1 addition & 0 deletions
1
test/blackbox-tests/test-cases/coq/coqdep-flags.t/theories/foo.v
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Definition mynat := nat. |