Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile before require does not ignore comments #352

Closed
vbgl opened this issue Apr 4, 2018 · 4 comments
Closed

Compile before require does not ignore comments #352

vbgl opened this issue Apr 4, 2018 · 4 comments

Comments

@vbgl
Copy link

vbgl commented Apr 4, 2018

When there are comments in a Require or Require Import sentence, and when “Compile Before Require” is enabled, Proof-General tries to compile the modules whose names are in comment. This behavior is unexpected and may fail (maybe because the comment is an actual comment, not a list of module names).

Test case:

Require Import (* Hello World *) Logic.

Surprisingly, things work as expected when comments are in Japanese; e.g., the following does not fail.

Require Import (* おはよう、世界!*) Logic.

Tested with current master (a789470) and Coq 8.7.2.

@Matafou
Copy link
Contributor

Matafou commented Apr 4, 2018

Thanks for reporting.
@hendriktews can you have a look at it pls?

@hendriktews
Copy link
Collaborator

hendriktews commented Apr 5, 2018 via email

@hendriktews
Copy link
Collaborator

hendriktews commented Apr 9, 2018 via email

hendriktews added a commit to hendriktews/PG that referenced this issue Nov 1, 2020
- no clones any more, existing jobs are directly linked
- the whole require command is processed by coqdep to determine
  the required files, this fixes ProofGeneral#352
- the require commands are a separate kind of jobs, because they
  do not need to get compiled
- queue items are only stored in require jobs and file jobs can
  not have a queue dependency, this simplifies the logic
hendriktews added a commit to hendriktews/PG that referenced this issue Nov 7, 2020
- no clones any more, existing jobs are directly linked
- the whole require command is processed by coqdep to determine
  the required files, this fixes ProofGeneral#352
- the require commands are a separate kind of jobs, because they
  do not need to get compiled
- queue items are only stored in require jobs and file jobs can
  not have a queue dependency, this simplifies the logic
@RalfJung
Copy link

RalfJung commented Dec 5, 2020

I just ran into this as well -- it took me some time to realize why PG is failing on this line:

From reloc Require Export reloc lib.Y (* for bot *).

hendriktews added a commit to hendriktews/PG that referenced this issue Dec 6, 2020
- no clones any more, existing jobs are directly linked
- the whole require command is processed by coqdep to determine
  the required files, this fixes ProofGeneral#352
- the require commands are a separate kind of jobs, because they
  do not need to get compiled
- queue items are only stored in require jobs and file jobs can
  not have a queue dependency, this simplifies the logic
hendriktews added a commit to hendriktews/PG that referenced this issue Dec 7, 2020
- no clones any more, existing jobs are directly linked
- the whole require command is processed by coqdep to determine
  the required files, this fixes ProofGeneral#352
- the require commands are a separate kind of jobs, because they
  do not need to get compiled
- queue items are only stored in require jobs and file jobs can
  not have a queue dependency, this simplifies the logic
hendriktews added a commit to hendriktews/PG that referenced this issue Dec 18, 2020
- no clones any more, existing jobs are directly linked
- the whole require command is processed by coqdep to determine
  the required files, this fixes ProofGeneral#352
- the require commands are a separate kind of jobs, because they
  do not need to get compiled
- queue items are only stored in require jobs and file jobs can
  not have a queue dependency, this simplifies the logic
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants