-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
🛠 Extend the "chalk lowering" pass with remaining rules #49177
Copy link
Copy link
Closed
Labels
A-trait-systemArea: Trait systemArea: Trait systemC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Metadata
Metadata
Assignees
Labels
A-trait-systemArea: Trait systemArea: Trait systemC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Now that @scalexm has created the basic framework for lowering, we need to flesh it out. This issue is intentionally structured as a "quest isuse" -- that is, a way for a lot of people to contribute, each doing one small thing. The goal is for everyone to get familiar with the overall "chalk" setup.
The tasks
Each task corresponds to one of the rules documented in the rustc-guide. You can search the guide for the rule name in order to find some text explaining the rule. If you want to do a rule, just check the box and edit this post to add your name (if you are a member of the GitHub team, you should have privileges for that). If you are not yet a member of the WG-traits group, leave a comment below or ping me on gitter and I will add you.
Mentoring instructions
As described above, the goal is to add the code to generate appropriate program clauses from various Rust constructs. You should use the
Implemented-From-Implrule as a kind of template:rust/src/librustc_traits/lowering.rs
Lines 121 to 130 in a04b88d
Each rule should also have a unit-test. This rustc-guide chapter describes how to create such unit tests.
cc @rust-lang/wg-traits