Rollup of 19 pull requests#155416
Conversation
* Extend `core::char`'s documentation of casing issues * Fix typos * Fix typo Co-authored-by: GrigorenkoPV <GrigorenkoPV+github@yandex.ru> * Document maximum 3x character expansion This is guaranteed by Unicode. * Fix error in `str` casing method docs
Another interal change that shouldn't impact rustc users. To prepare for the upcoming split of visit_type, we reorganise the instances of `cx.tcx.try_normalize_erasing_regions(cx.typing_env(), ty).unwrap_or(ty)` into a helper function outside of the main structs.
We don't consider it a bug that users can't break on initialization of some non-zero sized types (see comment on `maximally-steppable` at the top of the file), so it does not make sense to consider it a bug that users can't break on initialization of some zero-sized types.
When a type alias is locally re-exported from a private module (an implicit inline), rustdoc drops its `cfg` attributes because it treats it like a standard un-inlined re-export. Since type aliases have no inner fields to carry the `cfg` badge (unlike structs or enums), the portability info is lost entirely. This patch explicitly preserves the target's `cfg` metadata when the generated item is a `TypeAliasItem`, ensuring the portability badge renders correctly without breaking standard cross-crate re-export behavior.
For no apparent reason it's in a different file to `Token` itself. This commit moves it.
`rustc_ast_pretty::pp` defines `Printer` and has a 346 line `impl Printer` block for it. `rustc_ast_pretty::pp::convenience` has another `impl Printer` block with 85 lines. `rustc_ast_pretty::helpers` has another `impl Printer` block with 45 lines. This commit merges the two small `impl Printer` blocks into the bigger one, because there is no good reason for them to be separate. Doing this eliminates the `rustc_ast_pretty::pp::convenience` and `rustc_ast_pretty::helpers` modules; no great loss given that they were small and had extremely generic names.
so that we can check whether a type implements the trait
…ility tool to work with rustdoc
This directive was only being used by one test, which can just as easily use the more general `//@ failure-status` directive instead. All of the removed exit-code checks were redundant with other exit-code checks that are still present.
Suggest to bind `self.x` to `x` when field `x` may be in format string Fixes rust-lang#141350 I added the new test in the first commit, and committed the changes in the second one. r? @fmease cc @mejrs
c-variadic: fix implementation on `avr` tracking issue: rust-lang#44930 cc target maintainer @Patryk27 I ran into multiple issues, and although with this PR and a little harness I can run the test with qemu on avr, the implementation is perhaps not ideal. The problem we found is that on `avr` the `c_int/c_uint` types are `i16/u16`, and this was not handled in the c-variadic checks. Luckily there is a field in the target configuration that contains the targets `c_int_width`. However, this field is not actually used in `core` at all, there the 16-bit targets are just hardcoded. https://github.com/rust-lang/rust/blob/1500f0f47f5fe8ddcd6528f6c6c031b210b4eac5/library/core/src/ffi/primitives.rs#L174-L185 Perhaps we should expose this like endianness and pointer width? --- Finally there are some changes to the test to make it compile with `no_std`.
…Simulacrum,GuillaumeGomez Extend `core::char`'s documentation of casing issues (and fix a rustdoc bug) @rustbot label A-unicode A-docs
Use mutable pointers for Unix path buffers This gets mutable pointers for Unix path buffers to ensure they have the right provenance.
…jieyouxu Bump bootstrap to 1.96 beta See https://forge.rust-lang.org/release/process.html#default-branch-bootstrap-update-tuesday I think this will wind up needing another PR in a week or so when we pick up assert_matches getting destabilized in beta? But that seems like it can be split into its own PR.
…, r=mejrs Remove AttributeSafety from BUILTIN_ATTRIBUTES Encodes the expected attribute safety in the attribute parsers, rather than in `BUILTIN_ATTRIBUTES`, with the goal of removing `BUILTIN_ATTRIBUTES` soon. We can remove the old attribute safety logic already because unparsed attributes, just like the as of yet unparsed lint attributes, need to be safe. r? @jdonszelmann (or @mejrs if you feel like doing it, since you are in T-compiler now 🎉)
|
Rollup of everything.
@bors r+ rollup=never p=5 |
This comment has been minimized.
This comment has been minimized.
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 1b8f2e4 (parent) -> 27dbdb5 (this PR) Test differencesShow 528 test diffsStage 1
Stage 2
Additionally, 522 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 27dbdb57a2f90b5c90247e6ef14f2657a03473da --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 |
|
📌 Perf builds for each rolled up PR:
previous master: 1b8f2e46e1 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
|
Finished benchmarking commit (27dbdb5): 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 -0.8%, secondary -0.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary -8.5%, secondary -1.6%)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: 504.175s -> 490.301s (-2.75%) |
Successful merges:
self.xtoxwhen fieldxmay be in format string #141633 (Suggest to bindself.xtoxwhen fieldxmay be in format string)avr#152980 (c-variadic: fix implementation onavr)core::char's documentation of casing issues (and fix a rustdoc bug) #154491 (Extendcore::char's documentation of casing issues (and fix a rustdoc bug))doc(cfg)on locally re-exported type aliases #154970 (rustdoc: preservedoc(cfg)on locally re-exported type aliases)convert_while_asciiunsafe #155305 (Makeconvert_while_asciiunsafe)rustc_ast_pretty#155383 (Rearrangerustc_ast_pretty)box_newdiagnostic item for Box::new suggestions #155386 (Usebox_newdiagnostic item for Box::new suggestions)QueryJob::latchmethod #155391 (Small refactor ofQueryJob::latchmethod)as_ref_uncheckeddocs link fix #155396 (as_ref_uncheckeddocs link fix)//@ should-icedirective #155411 (compiletest: Remove the//@ should-icedirective)std::fs::hard_linkdocumentation #155413 (fix: typo instd::fs::hard_linkdocumentation)r? @ghost
Create a similar rollup