Rollup of 4 pull requests#151480
Conversation
Support slices in type reflection Tracking issue: rust-lang#146922 This PR adds support for inspecting slices `[T]` through type reflection. It does so by adding the new `Slice` struct + variant, which is very similar to `Array` but without the `len` field: ```rust pub struct Slice { pub element_ty: TypeId, } ``` Here is an example reflecting a slice: ```rust match const { Type::of::<[u8]>() }.kind { TypeKind::Slice(slice) => assert_eq!(slice.element_ty, TypeId::of::<u8>()), _ => unreachable!(), } ``` In addition to this, I also re-arranged the type info unit tests. r? @oli-obk
…nnethercote Bump bootstrap compiler to 1.94 https://forge.rust-lang.org/release/process.html#default-branch-bootstrap-update-tuesday
…hanBrouwer Port `#![crate_type]` to the attribute parser Tracking issue: rust-lang#131229 ~~Note that the actual parsing that is used in the compiler session is unchanged, as it must happen very early on; this just ports the validation logic.~~ Also added `// tidy-alphabetical-start` to `check_attr.rs` to make it a bit less conflict-prone
…=enthropy7 Improve error message for assert!() macro in functions returning bool Detect `assert!()` macro in error messages and provide clearer diagnostics When `assert!()` is used in a function returning a value, show a message explaining that `assert!()` doesn't return a value, instead of the generic "if may be missing an else clause" error. Fixes rust-lang#151446
|
@bors r+ rollup=never p=4 |
This comment has been minimized.
This comment has been minimized.
|
📌 Perf builds for each rolled up PR:
previous master: b765963267 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 b765963 (parent) -> d29e478 (this PR) Test differencesShow 93 test diffsStage 0
Stage 1
Stage 2
Additionally, 35 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 d29e4783dff30f9526eeba3929ebfe86c00c9dad --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 (d29e478): comparison URL. Overall result: ✅ improvements - 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 -1.4%, secondary -4.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -2.6%)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: 473.6s -> 472.528s (-0.23%) |
Successful merges:
#![crate_type]to the attribute parser #151442 (Port#![crate_type]to the attribute parser)r? @ghost
Create a similar rollup