-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Make ProofTreeBuilder
actually generic over Interner
#125598
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
Conversation
Some changes occurred to the core trait solver cc @rust-lang/initiative-trait-system-refactor |
ProofTreeBuilder
actually generic over Interner
☔ The latest upstream changes (presumably #125413) made this pull request unmergeable. Please resolve the merge conflicts. |
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.
r=me after nits and rebase
@@ -220,6 +220,13 @@ impl<'tcx> Interner for TyCtxt<'tcx> { | |||
self.check_and_mk_args(def_id, args) | |||
} | |||
|
|||
fn mk_canonical_goal_evaluation_step( |
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.
fn mk_canonical_goal_evaluation_step( | |
fn intern_canonical_goal_evaluation_step( |
I feel like mk
should only be for XKind -> X
, so this doesn't feel right to me
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.
We use mk_
either for Kind
interning and for some List
s, but I'd be happy to keep it to just those.
@@ -455,7 +457,7 @@ impl<'tcx> EvalCtxt<'_, InferCtxt<'tcx>> { | |||
goal: Goal<'tcx, G>, | |||
candidates: &mut Vec<Candidate<'tcx>>, | |||
) { | |||
let tcx = self.tcx(); | |||
let tcx = self.interner(); |
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.
🤔 this feels a bit meh, have some thoughts but they aren't blocking so let's chat about this the next time we meet in sync
compiler/rustc_trait_selection/src/solve/eval_ctxt/canonical.rs
Outdated
Show resolved
Hide resolved
6b56d57
to
56e87df
Compare
@bors r+ rollup (next solver) |
…, r=lcnr Make `ProofTreeBuilder` actually generic over `Interner` Self-explanatory. Also renamed `ecx.tcx()` to `ecx.interner()`. r? lcnr
Rollup of 4 pull requests Successful merges: - rust-lang#125411 (check host's libstdc++ version when using ci llvm) - rust-lang#125598 (Make `ProofTreeBuilder` actually generic over `Interner`) - rust-lang#125609 (Always use the general case char count with `optimize_for_size`) - rust-lang#125613 (Use `rmake` for `windows-` run-make tests) r? `@ghost` `@rustbot` modify labels: rollup
…, r=lcnr Make `ProofTreeBuilder` actually generic over `Interner` Self-explanatory. Also renamed `ecx.tcx()` to `ecx.interner()`. r? lcnr
conflicts with https://github.com/rust-lang/rust/pull/125343/files flipping a coin I guess |
hm PR order should be fine actually. |
56e87df
to
8050afa
Compare
Rebased just in case @bors r=lcnr |
This comment has been minimized.
This comment has been minimized.
@bors r- |
8050afa
to
f494036
Compare
@bors r=lcnr |
…, r=lcnr Make `ProofTreeBuilder` actually generic over `Interner` Self-explanatory. Also renamed `ecx.tcx()` to `ecx.interner()`. r? lcnr
…iaskrgr Rollup of 6 pull requests Successful merges: - rust-lang#117671 (NVPTX: Avoid PassMode::Direct for args in C abi) - rust-lang#124251 (Add an intrinsic for `ptr::metadata`) - rust-lang#125573 (Migrate `run-make/allow-warnings-cmdline-stability` to `rmake.rs`) - rust-lang#125590 (Add a "Setup Python" action for github-hosted runners and remove unnecessary `CUSTOM_MINGW` environment variable) - rust-lang#125598 (Make `ProofTreeBuilder` actually generic over `Interner`) - rust-lang#125637 (rustfmt fixes) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 5 pull requests Successful merges: - rust-lang#117671 (NVPTX: Avoid PassMode::Direct for args in C abi) - rust-lang#125573 (Migrate `run-make/allow-warnings-cmdline-stability` to `rmake.rs`) - rust-lang#125590 (Add a "Setup Python" action for github-hosted runners and remove unnecessary `CUSTOM_MINGW` environment variable) - rust-lang#125598 (Make `ProofTreeBuilder` actually generic over `Interner`) - rust-lang#125637 (rustfmt fixes) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#125598 - compiler-errors:proof-tree-builder, r=lcnr Make `ProofTreeBuilder` actually generic over `Interner` Self-explanatory. Also renamed `ecx.tcx()` to `ecx.interner()`. r? lcnr
Self-explanatory. Also renamed
ecx.tcx()
toecx.interner()
.r? lcnr