Convert the rest of the visitors to use VisitorResult#121576
Convert the rest of the visitors to use VisitorResult#121576bors merged 4 commits intorust-lang:masterfrom
VisitorResult#121576Conversation
|
r? @wesleywiser rustbot has assigned @wesleywiser. Use r? to explicitly pick a reviewer |
|
Some changes occurred to the core trait solver cc @rust-lang/initiative-trait-system-refactor Some changes occurred to the CTFE / Miri engine cc @rust-lang/miri Some changes occurred in src/tools/clippy cc @rust-lang/clippy These commits modify the If this was unintentional then you should revert the changes before this PR is merged. Some changes occurred in cc @BoxyUwU |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
compiler/rustc_type_ir/src/visit.rs
Outdated
|
|
||
| use crate::{self as ty, BoundVars, Interner, IntoKind, Lrc, TypeFlags}; | ||
|
|
||
| /// Similar to the `Try` trait, but also implemented for `()`. |
There was a problem hiding this comment.
Move this to rustc_data_structures, so you can avoid all the new crate dependencies (even if you have to add some, they'll already be there transitively)
There was a problem hiding this comment.
rustc_type_ir is already a transitive dependency for all of them via rustc_ast (or rustc_hir, which depends on rustc_ast).
There was a problem hiding this comment.
huh. Why does ast depend on type_ir
There was a problem hiding this comment.
Ah
rust/compiler/rustc_ast/Cargo.toml
Line 17 in e9f9594
There was a problem hiding this comment.
Let's avoid adding more direct deps and instead move this new trait and macros to data structures. It's not type system specific after all
There was a problem hiding this comment.
What's with the nightly feature on rustc_type_ir and all the optional dependencies? Should I just ignore those or make the whole visit module depend on a feature?
There was a problem hiding this comment.
Hmm I see your point. That's annoying. I guess it's the same with the movability and the mutability enums. If you feel really motivated rn, you could split those out into a new crate and get rid of the ast->type_ir dep
There was a problem hiding this comment.
Just pulling them into their own crate is easy. Doing it in a way that's actually nice is probably going to be a fair bit of work.
There was a problem hiding this comment.
The split is done. Please move it to rustc_ast_ir and adjust the dependencies. Where useful, reexports could help reduce the amount of direct dependencies on rustc_ast_ir
|
☔ The latest upstream changes (presumably #119106) made this pull request unmergeable. Please resolve the merge conflicts. |
…-errors Split rustc_type_ir to avoid rustc_ast from depending on it unblocks rust-lang#121576 and resolves a FIXME in `rustc_ast`'s `Cargo.toml` The new crate is tiny, but it will get bigger in rust-lang#121576
…-errors Split rustc_type_ir to avoid rustc_ast from depending on it unblocks rust-lang#121576 and resolves a FIXME in `rustc_ast`'s `Cargo.toml` The new crate is tiny, but it will get bigger in rust-lang#121576
…-errors Split rustc_type_ir to avoid rustc_ast from depending on it unblocks rust-lang#121576 and resolves a FIXME in `rustc_ast`'s `Cargo.toml` The new crate is tiny, but it will get bigger in rust-lang#121576
…-errors Split rustc_type_ir to avoid rustc_ast from depending on it unblocks rust-lang#121576 and resolves a FIXME in `rustc_ast`'s `Cargo.toml` The new crate is tiny, but it will get bigger in rust-lang#121576
Rollup merge of rust-lang#121695 - oli-obk:split_ty_utils, r=compiler-errors Split rustc_type_ir to avoid rustc_ast from depending on it unblocks rust-lang#121576 and resolves a FIXME in `rustc_ast`'s `Cargo.toml` The new crate is tiny, but it will get bigger in rust-lang#121576
This comment has been minimized.
This comment has been minimized.
|
@rustbot ready |
compiler/rustc_ast/src/visit.rs
Outdated
|
|
||
| use core::ops::ControlFlow; | ||
|
|
||
| use rustc_ast_ir::visit::VisitorResult; |
There was a problem hiding this comment.
| use rustc_ast_ir::visit::VisitorResult; | |
| pub use rustc_ast_ir::visit::VisitorResult; |
And then get rid of all the direct dependencies on rustc_ast_ir
|
@bors r+ |
Convert the rest of the visitors to use `VisitorResult` Continuing from rust-lang#121256.
…llaumeGomez Rollup of 9 pull requests Successful merges: - rust-lang#120976 (constify a couple thread_local statics) - rust-lang#121576 (Convert the rest of the visitors to use `VisitorResult`) - rust-lang#121826 (Use root obligation on E0277 for some cases) - rust-lang#121928 (Extract an arguments struct for `Builder::then_else_break`) - rust-lang#121958 (Fix redundant import errors for preload extern crate) - rust-lang#121959 (Removing absolute path in proc-macro) - rust-lang#121968 (Don't run test_get_os_named_thread on win7) - rust-lang#121977 (Doc: Fix incorrect reference to integer in Atomic{Ptr,Bool}::as_ptr.) - rust-lang#121978 (Fix duplicated path in the "not found dylib" error) r? `@ghost` `@rustbot` modify labels: rollup
|
☔ The latest upstream changes (presumably #122012) made this pull request unmergeable. Please resolve the merge conflicts. |
|
@bors p=1 bitrotty please rebase, we'll land with priority next time |
|
@bors r+ |
|
☀️ Test successful - checks-actions |
|
Finished benchmarking commit (b6d2d84): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis 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.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 644.259s -> 646.18s (0.30%) |
Continuing from #121256.