-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
More trait error reworking #127495
More trait error reworking #127495
Conversation
This comment has been minimized.
This comment has been minimized.
8738543
to
bbbff80
Compare
Some changes occurred to the core trait solver cc @rust-lang/initiative-trait-system-refactor |
This one's ready too :> |
@@ -127,6 +137,195 @@ pub enum DefIdOrName { | |||
Name(&'static str), | |||
} | |||
|
|||
#[extension(pub trait TypeErrCtxtExt<'a, 'tcx>)] | |||
impl<'a, 'tcx> TypeErrCtxt<'a, 'tcx> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why did you move this out of fulfillment_errors
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe I wanted to separate the public API (report_fulfillment_errors
) from the impl details (reporting each specific error). Also wanted to make fulfillment_errors
smaller module, bc it was like 4000 lines long.
Ideally fulfillment_errors
has all the private impls (reporting specific fulfillment errors) except it's still currently pub because we report a single error (selection errors) manually in coercion rn.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
apart from this question r=me
question answered, if u want me to fix anything later let's do it in a follow-up, since i want this generally to land before i make the big transition pr @bors r=lcnr |
…eworking, r=lcnr More trait error reworking More work on rust-lang#127492, specifically those sub-bullets under "Move trait error reporting to `error_reporting::traits`". Stacked on top of rust-lang#127493. This does introduce new `TypeErrCtxt.*Ext` traits, but those will be deleted soon. Splitting this work into bite-sized pieces is the only way that it's gonna be feasible to both author and review ❤️ r? lcnr
…eworking, r=lcnr More trait error reworking More work on rust-lang#127492, specifically those sub-bullets under "Move trait error reporting to `error_reporting::traits`". Stacked on top of rust-lang#127493. This does introduce new `TypeErrCtxt.*Ext` traits, but those will be deleted soon. Splitting this work into bite-sized pieces is the only way that it's gonna be feasible to both author and review ❤️ r? lcnr
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#127091 (impl FusedIterator and a size hint for the error sources iter) - rust-lang#127358 (Automatically taint when reporting errors from ItemCtxt) - rust-lang#127382 (Use verbose style when suggesting changing `const` with `let`) - rust-lang#127484 (`#[doc(alias)]`'s doc: say that ASCII spaces are allowed) - rust-lang#127495 (More trait error reworking) - rust-lang#127496 (Update `f16`/`f128` FIXMEs that needed `(NEG_)INFINITY`) - rust-lang#127508 (small search graph refactor) r? `@ghost` `@rustbot` modify labels: rollup
…eworking, r=lcnr More trait error reworking More work on rust-lang#127492, specifically those sub-bullets under "Move trait error reporting to `error_reporting::traits`". Stacked on top of rust-lang#127493. This does introduce new `TypeErrCtxt.*Ext` traits, but those will be deleted soon. Splitting this work into bite-sized pieces is the only way that it's gonna be feasible to both author and review ❤️ r? lcnr
…iaskrgr Rollup of 10 pull requests Successful merges: - rust-lang#124339 (allow overwriting the output of `rustc --version`) - rust-lang#125627 (migration lint for `expr2024` for the edition 2024) - rust-lang#127091 (impl FusedIterator and a size hint for the error sources iter) - rust-lang#127358 (Automatically taint when reporting errors from ItemCtxt) - rust-lang#127484 (`#[doc(alias)]`'s doc: say that ASCII spaces are allowed) - rust-lang#127495 (More trait error reworking) - rust-lang#127496 (Update `f16`/`f128` FIXMEs that needed `(NEG_)INFINITY`) - rust-lang#127508 (small search graph refactor) - rust-lang#127521 (Remove spastorino from SMIR) - rust-lang#127532 (documentation: update cmake version) r? `@ghost` `@rustbot` modify labels: rollup
…eworking, r=lcnr More trait error reworking More work on rust-lang#127492, specifically those sub-bullets under "Move trait error reporting to `error_reporting::traits`". Stacked on top of rust-lang#127493. This does introduce new `TypeErrCtxt.*Ext` traits, but those will be deleted soon. Splitting this work into bite-sized pieces is the only way that it's gonna be feasible to both author and review ❤️ r? lcnr
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#127091 (impl FusedIterator and a size hint for the error sources iter) - rust-lang#127358 (Automatically taint when reporting errors from ItemCtxt) - rust-lang#127484 (`#[doc(alias)]`'s doc: say that ASCII spaces are allowed) - rust-lang#127495 (More trait error reworking) - rust-lang#127496 (Update `f16`/`f128` FIXMEs that needed `(NEG_)INFINITY`) - rust-lang#127508 (small search graph refactor) - rust-lang#127521 (Remove spastorino from SMIR) - rust-lang#127532 (documentation: update cmake version) r? `@ghost` `@rustbot` modify labels: rollup
☀️ Test successful - checks-actions |
Finished benchmarking commit (956deab): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)This benchmark run did not return any relevant results for this metric. CyclesResults (secondary 2.3%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 704.936s -> 702.638s (-0.33%) |
More work on #127492, specifically those sub-bullets under "Move trait error reporting to
error_reporting::traits
". Stacked on top of #127493.This does introduce new
TypeErrCtxt.*Ext
traits, but those will be deleted soon. Splitting this work into bite-sized pieces is the only way that it's gonna be feasible to both author and review ❤️r? lcnr