Skip to content

rustc_driver: expose a way to override query providers in CompileController. #45944

New issue

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

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

Already on GitHub? # to your account

Merged
merged 2 commits into from
Nov 15, 2017

Conversation

eddyb
Copy link
Member

@eddyb eddyb commented Nov 12, 2017

This API has been a long-time coming and will probably become the main method for custom drivers (that is, binaries other than rustc itself that use librustc_driver) to adapt the compiler's behavior.

@eddyb
Copy link
Member Author

eddyb commented Nov 12, 2017

r? @nikomatsakis or @michaelwoerister

@kennytm kennytm added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Nov 12, 2017
@michaelwoerister
Copy link
Member

Looks good to me. r? @nikomatsakis

@nikomatsakis
Copy link
Contributor

@bors r+

@bors
Copy link
Collaborator

bors commented Nov 13, 2017

📌 Commit 0ac6c3a has been approved by nikomatsakis

bors added a commit that referenced this pull request Nov 14, 2017
rustc_mir: hardcode pass list internally and remove premature pluggability.

Fixes #41712 by moving the MIR pass lists from `rustc_driver` to `rustc_mir`.
The application of the passes is done with the `rustc_mir::transform::run_passes` macro, which is public, as are all the passes AFAIK, and can be used to apply MIR passes outside of `rustc_mir`.

With the ability to override query providers through the `rustc_driver` (orthogonal to, and not included in this PR), custom drivers will be able to substitute the entire pass list if they want to.
**EDIT**: the aforementioned ability is added by #45944.

r? @nikomatsakis
@kennytm kennytm added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Nov 14, 2017
@bors
Copy link
Collaborator

bors commented Nov 15, 2017

⌛ Testing commit 0ac6c3a with merge 3707db9...

bors added a commit that referenced this pull request Nov 15, 2017
rustc_driver: expose a way to override query providers in CompileController.

This API has been a long-time coming and will probably become the main method for custom drivers (that is, binaries other than `rustc` itself that use `librustc_driver`) to adapt the compiler's behavior.
@bors
Copy link
Collaborator

bors commented Nov 15, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: nikomatsakis
Pushing 3707db9 to master...

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants