Conversation
…BoxyUwU Allow specifying multiple bounds for same associated item, except in trait objects Supersedes rust-lang#143146, fixes rust-lang#143143. This PR proposes to stop enforcing E0719 in all contexts other than trait object types. E0719 forbids constraining the same associated item twice within the same angle-bracket delimited associated item bound list (the `…` inside `T: Trait<…>`). For example, the following are forbidden: | Forbidden | Working alternative | |--------------------------------------------|--------------------------------------------------------------------| | `T: Trait<Gat<u32> = u32, Gat<u64> = u64>` | `T: Trait<Gat<u32> = u32> + Trait<Gat<u64> = u64>` | | `T: Iterator<Item = u32, Item = i32>` | `T: Iterator<Item = u32> + Iterator<Item = i32>` (trivially false) | | `T: Iterator<Item = u32, Item = u32>` | `T: Iterator<Item = u32>` | | `T: Iterator<Item: Send, Item: Sync>` | `T: Iterator<Item: Send + Sync>` | | `T: Trait<ASSOC = 3, ASSOC = 4>` | `T: Trait<ASSOC = 3> + Trait<ASSOC = 4>` (trivially false) | | `T: Trait<ASSOC = 3, ASSOC = 3>` | `T: Trait<ASSOC = 3>` | With this PR, all those previously forbidden examples would start working, as well as their APIT and RPIT equivalents. Types like `dyn Iterator<Item = u32, Item = u32>` will continue to be rejected, however. See rust-lang#143146 (comment) for the reason why. ```@rustbot``` label T-lang T-types needs-fcp
[DebugInfo] Fix MSVC tuple child creation This is a fix for the debugger visualizer scripts For whatever reason, using `CreateChildAtOffset` on the child element sometimes caused issues with pointers (and maybe some other types). The resulting child's memory would be a block 4 bytes too far forward. Creating the child off of the parent `valobj` and using the type definition to get the correct offset seems to fix that. Before: <img width="489" height="136" alt="image" src="https://github.com/user-attachments/assets/fb4cb95c-f199-49a6-8eba-6d3ff486b69a" /> After: <img width="518" height="145" alt="image" src="https://github.com/user-attachments/assets/3f50dbc3-19ca-4fd8-87c5-b4be295f6e7c" /> This shouldn't affect any tests as we don't run debuginfo tests for MSVC afaik
iter repeat: add tests for new count and last behavior Tests for rust-lang#146410
Swap order of `resolve_coroutine_interiors` and `handle_opaque_type_uses` r? ```@BoxyUwU``` if the comment says x should be last, it helps if it's actually last hehe :P Fixes rust-lang/trait-system-refactor-initiative#239
…boet Refactor ArrayWindows to use a slice [Tracking issue](rust-lang#75027)
…szelmann Add proper error handling for closure in impl Fixes rust-lang#147146 Fixes rust-lang#146620 Not sure if it can cause any regressions or anything, as for test also have no idea where to store this one cc ```@theemathas``` r? compiler
…lver, r=lcnr include `outer_inclusive_binder` of pattern types Fixes rust-lang/trait-system-refactor-initiative#237 r? ```@lcnr```
Fix typo in 'unfulfilled_lint_expectation' to plural
|
@bors r+ rollup=never p=5 |
|
☀️ Test successful - checks-actions |
|
📌 Perf builds for each rolled up PR:
previous master: d4ae855111 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 d4ae855 (parent) -> 4da69df (this PR) Test differencesShow 62 test diffsStage 1
Stage 2
Additionally, 34 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 4da69dfff1929cc79872b3d05ab7112d84753dba --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 (4da69df): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 2.5%, secondary -2.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -5.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 470.999s -> 471.938s (0.20%) |
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#146593 (Allow specifying multiple bounds for same associated item, except in trait objects) - rust-lang#147177 ([DebugInfo] Fix MSVC tuple child creation) - rust-lang#147195 (iter repeat: add tests for new count and last behavior) - rust-lang#147202 (Swap order of `resolve_coroutine_interiors` and `handle_opaque_type_uses`) - rust-lang#147204 (Refactor ArrayWindows to use a slice) - rust-lang#147219 (Add proper error handling for closure in impl) - rust-lang#147226 (include `outer_inclusive_binder` of pattern types) - rust-lang#147230 (Fix typo in 'unfulfilled_lint_expectation' to plural) r? `@ghost` `@rustbot` modify labels: rollup
Successful merges:
resolve_coroutine_interiorsandhandle_opaque_type_uses#147202 (Swap order ofresolve_coroutine_interiorsandhandle_opaque_type_uses)outer_inclusive_binderof pattern types #147226 (includeouter_inclusive_binderof pattern types)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup