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

[META] Frontend completeness #943

Closed
1 of 4 tasks
W95Psp opened this issue Oct 2, 2024 · 2 comments
Closed
1 of 4 tasks

[META] Frontend completeness #943

W95Psp opened this issue Oct 2, 2024 · 2 comments
Labels
frontend Issue in the Rust to JSON translation meta

Comments

@W95Psp
Copy link
Collaborator

W95Psp commented Oct 2, 2024

We want the frontend of hax to be complete, that is:

  • all Rust constructs should be handled;
  • the frontend shall not crash.

Currently the main pain with frontend is traits: we implement our own logic for finding implementations for traits. This part is the only "smart" part of the frontend, I would say.
This trait implementation resolver is the only part of the frontend where we (1) go deep down rustc's AST (2) reconstruct some complicated data and ask Rust something. Here "reconstruct some complicated data" involves binders: we have a hard time reconstructing binders correctly, thus we break invariants and rustc crashes.

List of bugs:

Ccing @R1kM @Nadrieril @sonmarcho who are probably interested

Action items

@W95Psp W95Psp added meta frontend Issue in the Rust to JSON translation labels Oct 2, 2024
@W95Psp
Copy link
Collaborator Author

W95Psp commented Oct 8, 2024

@W95Psp
Copy link
Collaborator Author

W95Psp commented Oct 30, 2024

We fixed all the issues here, the only one left is #1046, which is related to GATs
The plan is for the engine to move to @Nadrieril's great new enum FullDef, which gets rid of HIR construct, which is a bit of a technical debt. #1072 tracks that.

@W95Psp W95Psp closed this as completed Oct 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
frontend Issue in the Rust to JSON translation meta
Projects
None yet
Development

No branches or pull requests

1 participant