Rollup of 4 pull requests#157631
Conversation
Letting `lower_lifetime` check `tcx.named_bound_var` & call `re_infer` just means we now end up passing `lifetime.ident.span` to `re_infer` instead of the `span` of the trait object type. However, 1. in the case of `LifetimeKind::ImplicitObjectLifetimeDefault` `lifetime.ident.span` is actually equal to said span. 2. in the case of `LifetimeKind::Infer` the span now makes more sense; consider `dyn Trait + '_` where the span now just contains the `'_` not the entire type which is just better.
…nfer` This makes it really obvious that we're computing object region bounds for `Infer`, too, not just for `ImplicitObjectLifetimeDefault` which was really hard to see beforehand. It's unclear to me whether this was intentional or not, needs investigation. Introduce method `lower_trait_object_lifetime` to allow usage of early returns to make the control flow clearer compared to the `unwrap_or_else`.
Reorganize `tests/ui/issues` [6/N] Part of [GSoC'26 project](https://rust-lang.zulipchat.com/#narrow/channel/421156-gsoc/topic/Project.3A.20Reorganizing.20tests.2Fui.2Fissues) r? Kivooeo @Teapot4195
…wnGnome Remove comments already covered by rustdoc Since rust-lang#157310 was merged, rustdoc renders `impl` restrictions. As such, these comments are no longer necessary.
…ivooeo Simplify the HIR ty lowering of trait object lifetime bounds See individual commit messages for details.
rustc_resolve: point the label span at the segment that could not be resolved This is part of work that @weiznich and I are doing for `#[diagnostic::on_unknown]`. This means that you can put the attribute in macro_rules macros and have the label message point at the input the user gave. It's imo also the right thing to point the span at in general. ```rust mod things {} macro_rules! mac { ($thing: ident) => {{ const _x: u32 = { #[diagnostic::on_unknown(label = "you did the bad thing")] use things::$thing; //~^ERROR unresolved import `things::what` [E0432] //~|ERROR unresolved import `things::what2` [E0432] $thing }; }}; } ``` ``` LL | | what2 | | ----- you did the bad thing ``` See also the first and last commit for what these messages look(ed) like. cc @estebank
|
@bors r+ rollup=never p=5 |
This comment has been minimized.
This comment has been minimized.
|
📌 Perf builds for each rolled up PR:
previous master: d8c2e97719 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing d8c2e97 (parent) -> a962594 (this PR) Test differencesShow 77 test diffsStage 1
Stage 2
Additionally, 33 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard a9625940af29aa50d785aee438b90f3b272c156f --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (a962594): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis perf run didn't have relevant results for this metric. Max RSS (memory usage)Results (primary 6.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 2.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 520.354s -> 516.416s (-0.76%) |
Successful merges:
tests/ui/issues[6/N] #157547 (Reorganizetests/ui/issues[6/N])r? @ghost
Create a similar rollup