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

Some assorted fixes #2839

Merged
merged 20 commits into from
Mar 7, 2023
Merged

Some assorted fixes #2839

merged 20 commits into from
Mar 7, 2023

Conversation

mtzguido
Copy link
Member

  • Fix a couple typing errors in the compiler not caught by lax-checking (a value of type ident accepted to be term, and similarly for lbname and lident).
  • Add a new qualifier to ident and lident to prevent this error, as they are hidden by an interface. Should do for more types too?
  • Show warning immediately when --debug, do not collect them.
  • Antiquotations now work in binders and patterns
  • Improving an error for loading plugins. I will soon send a PR for building plugins when --codegen is passed, instead of trying to do so at --load time (which can be a race in a build system, and HACL* has some logic to avoid it).

mtzguido added 20 commits March 7, 2023 07:13
The .range field is actually for terms, so this is a type error, but not
caught as we are only lax-checking and F* is dropping a guard requiring
`ident == term`.

cc @W95Psp
No need to `failwith`, and we can also add a way to ignore the error
and continue without loading the plugin file.
We cannot allow tactics to just set any qualifier. While some of them
will cause the typechecker to fail, in others it will just silently
accept them since it trusts the parser to not generate odd combinations,
such as `Effect` on a top-level value definition.

So, just raise an error if any internal qualifier appears in the
generated sigelt.
They are not curried, their payloads are pairs
Otherwise this will not run for interpreted tactics, only for native
ones.
@mtzguido
Copy link
Member Author

mtzguido commented Mar 7, 2023

Added:

  • An interface for the errors module
  • Forbid using internal qualifiers when splicing (for this I also reordered the qual list in the Syntax module to respect a comment, and hence bumped the checked file version number)
  • Fix some embeddings
  • Fix 2089

@mtzguido mtzguido merged commit 9594e8f into master Mar 7, 2023
@mtzguido mtzguido deleted the guido_misc branch March 7, 2023 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant