about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2025-07-26move uefi test to run-makeFolkert de Vries-215/+5
2025-07-26Auto merge of #144490 - tgross35:rollup-ps0utme, r=tgross35bors-6/+23
Rollup of 9 pull requests Successful merges: - rust-lang/rust#140871 (Don't lint against named labels in `naked_asm!`) - rust-lang/rust#141663 (rustdoc: add ways of collapsing all impl blocks) - rust-lang/rust#143272 (Upgrade the `fortanix-sgx-abi` dependency) - rust-lang/rust#143585 (`loop_match`: suggest extracting to a `const` item) - rust-lang/rust#143698 (Fix unused_parens false positive) - rust-lang/rust#143859 (Guarantee 8 bytes of alignment in Thread::into_raw) - rust-lang/rust#144160 (tests: debuginfo: Work around or disable broken tests on powerpc) - rust-lang/rust#144412 (Small cleanup: Use LocalKey<Cell> methods more) - rust-lang/rust#144431 (Disable has_reliable_f128_math on musl targets) r? `@ghost` `@rustbot` modify labels: rollup
2025-07-26Migrate `extract_expressions_from_format_string` assist to use `SyntaxEditor`Hayashi Mikihiro-8/+11
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-07-26Migrate Convert_to_guarded_return to use SyntaxEditorHayashi Mikihiro-7/+6
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-07-26Migrate part of utils.rs to use SyntaxEditorHayashi Mikihiro-3/+5
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-07-26CI: run apt update before installing anythingRalf Jung-0/+4
2025-07-26Rollup merge of #144160 - Gelbpunkt:debuginfo-tests-ppc, r=oli-obkTrevor Gross-0/+1
tests: debuginfo: Work around or disable broken tests on powerpc f16 support for PowerPC has issues in LLVM, therefore we need a small workaround to prevent LLVM from emitting symbols that don't exist for PowerPC yet. It also appears that rust-lang/rust#128973 applies to PowerPC targets as well, though I've only tested 64-bit Linux targets.
2025-07-26Rollup merge of #141663 - lolbinarycat:rustdoc-collapse-impl-134429, ↵Trevor Gross-6/+22
r=GuillaumeGomez rustdoc: add ways of collapsing all impl blocks either shift+click the Summary button, or use the `_` key. this collapses everything, including (inherent) impl blocks. no need for a special "expand all impl blocks" method, as impl blocks are expanded during regular "expand all". doing "expand all" -> "collapse all" will always result in only impl blocks being expaned. not sure the best way to add a GUI test. fixes https://github.com/rust-lang/rust/issues/134429
2025-07-26Rollup merge of #144356 - GuillaumeGomez:gcc-ignore-tests, r=jieyouxuTrevor Gross-0/+5
Add `ignore-backends` annotations in failing GCC backend ui tests Follow-up of https://github.com/rust-lang/rust/pull/144125. In the GCC backend, we don't support all ui tests yet and we have a list of tests we currently ignore available [here](https://github.com/rust-lang/rustc_codegen_gcc/blob/master/tests/failing-ui-tests.txt). This PR adds the `ignore-backends` annotations to the corresponding ui tests. The second commit is a fix to compiletest, complaining about `ignore-backends`. r? ```@jieyouxu```
2025-07-26Rollup merge of #144316 - Gelbpunkt:musl-libdir-bootstrap, r=KobzolTrevor Gross-14/+18
bootstrap: Move musl-root fallback out of sanity check Previously, the musl root would only be set to the fallback `/usr` by the sanity check, which isn't ran for the bootstrap tests. r? ``````@Kobzol``````
2025-07-26Migrate PathTransform to SyntaxEditorHayashi Mikihiro-86/+168
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-07-26add Debug on AstSubst PathTransform.rsHayashi Mikihiro-1/+2
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-07-26test: add test case for fold doc comment for multiline param list fnYoung-Flash-0/+17
2025-07-26fix fold doc comment for multiline param list fnYoung-Flash-4/+6
2025-07-25Auto merge of #144338 - weihanglo:update-cargo, r=weihanglobors-0/+1
Update cargo 8 commits in 6833aa715d724437dc1247d0166afe314ab6854e..9b296973b425ffb159e12cf3cd56580fd5c85382 2025-07-13 02:25:52 +0000 to 2025-07-25 17:10:08 +0000 - Allow using Cargo-as-a-library with gix's reqwest backend (rust-lang/cargo#15653) - Make timings graphs scalable to user's window (rust-lang/cargo#15766) - refactor: rename arg `mode` to `intent` (rust-lang/cargo#15774) - fix: `no-proc-macro` is overridden by subsequent edges (rust-lang/cargo#15764) - Use `gix` for `cargo package` (rust-lang/cargo#15534) - cargo-credential-libsecret: give FFI correctly-sized object (rust-lang/cargo#15767) - Remove unnecessary target-c-int-width from target specs (rust-lang/cargo#15759) - Expose artifact dependency getters in cargo-as-a-library (rust-lang/cargo#15753)
2025-07-25Revise content on lang feature processesTravis Cross-263/+333
Let's revise both the new content in this PR as well as the remaining text in the relevant chapters so as to better describe our current processes related to language features and their stabilizations. For the new stabilization report template, based on reviewing its early use and well as reviewing earlier stabilization reports, we've revised it editorially and added questions designed to capture additional details to which we commonly want people to speak.
2025-07-25Address review feedbackJieyou Xu-51/+124
- Address Call for Testing review feedback - Address Affiliated work review feedback - Drop "stabilization is easy" part - Fix broken feature gate examples - Elaborate on stabilization report summarization aspects - Recommend waiting a bit for team nominations - Make Stabilization Template markdown copy friendly - Register stabilization report template - Drop unfinished sentence - Clarify stabilization report template is for language features - Add test coverage elaboration - Add UB checks / opt question - Amend test coverage explanation - Mention OSS nightly users
2025-07-25Address review feedbackNiko Matsakis-5/+5
Co-authored-by: lcnr <rust@lcnr.de> Co-authored-by: Ralf Jung <post@ralfj.de> Co-authored-by: waffle <waffle.lapkin@gmail.com>
2025-07-25Add stabilization template and revise docsNiko Matsakis-36/+99
2025-07-25clif: Don't set the `compiler-builtins-no-f16-f128` featureTrevor Gross-5/+0
Since rust-lang/rust be35d37d8b6c ("Use the compiler to determine whether or not to enable f16 and f128"), `compiler-builtins` relies on `rustc` to report whether or not `f16` and `f128` are supported, which is reported by the backend. This means that there should no longer be any need to unconditionally disable the types for clif in Bootstrap. Backend config: https://github.com/rust-lang/rust/blob/a955f1cd09a027363729ceed919952d09f76f28e/compiler/rustc_codegen_cranelift/src/lib.rs#L224-L233
2025-07-25Update cargoWeihang Lo-0/+1
ring is brought into Cargo transitively because Cargo now provides optional (unstable) reqwest HTTP backend.
2025-07-25Only run bootstrap tests in `x test` on CIJakub Beránek-1/+5
2025-07-25change_tracker: fix a typoMaksim Bondarenkov-1/+1
there is no `llvm.lld` option
2025-07-25Auto merge of #144449 - flip1995:clippy-subtree-update, r=Manishearthbors-1125/+3791
Clippy subtree update r? `@Manishearth`
2025-07-25rename ext_tool_checks to extra_checks and use mod.rsbinarycat-2/+2
this makes the triagebot pings for this module simpler
2025-07-26Modify around add_trait_assoc_items_to_impl to migrate add_missing_impl_membersHayashi Mikihiro-110/+229
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-07-25Allow approx-constant in `x clippy library`Philipp Krones-0/+1
2025-07-25Merge commit '1db89a1b1ca87f24bf22d0bad21d14b2d81b3e99' into ↵Philipp Krones-1125/+3790
clippy-subtree-update
2025-07-25Check `./x check bootstrap` in `pr-check-1`Jieyou Xu-0/+1
This check is relatively cheap, and is a quick way to root out breaking check flow of `bootstrap` itself.
2025-07-25Revert "Move `shared_helpers` test to a dedicated module"Jieyou Xu-11/+22
I missed this during review. We cannot declare a `tests` module within `shared_helpers.rs` itself, as shim binaries that tries to include the `shared_helpers` module through `#[path = ".."]` attributes would fail to find it, breaking `./x check bootstrap`. This reverts commit `40c2ca96411caaeab1563ff9041879f742d1d71b`.
2025-07-25migrate_replace_derive_with_manual_implHmikihiro-60/+45
2025-07-25split ted from gen_trait_fn_bodyHmikihiro-88/+65
2025-07-25Rollup merge of #144390 - oli-obk:arbitrary-enum-discrs, r=SparrowLiiMatthias Krüger-13/+3
Remove dead code and extend test coverage and diagnostics around it I was staring a bit at the `dont_niche_optimize_enum` variable and figured out that part of it is dead code (at least today it is). I changed the diagnostic and test around the code that makes that part dead code, so everything that makes removing that code sound is visible in this PR
2025-07-25Merge pull request #4489 from Stypox/misc-tracing-fixesRalf Jung-6/+11
Miscellaneous fixes for tracing
2025-07-25Merge pull request #4492 from rust-lang/rustup-2025-07-25Ralf Jung-1580/+738
Automatic Rustup
2025-07-25fix target jsonRalf Jung-1/+1
2025-07-25Fix double "fatal error: " in messageStypox-1/+1
2025-07-25Fix missing $ in enter_trace_span!Stypox-1/+1
2025-07-25Use i64 for tracing chrome "id"Stypox-4/+9
Perfetto gives an error if an id does not fit in an 64-bit signed integer in 2's complement.
2025-07-25Fix cronjob Zulip messageJakub Beránek-1/+1
2025-07-25fmtThe Miri Cronjob Bot-7/+2
2025-07-25Merge ref 'b56aaec52bc0' from rust-lang/rustThe Miri Cronjob Bot-1571/+734
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: b56aaec52bc0fa35591a872fb4aac81f606e265c Filtered ref: 12f5e3255df658296af9fc953d8c1ab79ba91ea3 This merge was created using https://github.com/rust-lang/josh-sync.
2025-07-25Prepare for merging from rust-lang/rustThe Miri Cronjob Bot-1/+1
This updates the rust-version file to b56aaec52bc0fa35591a872fb4aac81f606e265c.
2025-07-25Merge pull request #19938 from A4-Tacks/gen-impl-traitShoyu Vanilla (Flint)-3/+346
Add ide-assist: generate_impl_trait for generate_impl
2025-07-25Merge pull request #2518 from rust-lang/rustc-pullTshepang Mbambo-2453/+2553
Rustc pull update
2025-07-24Rename tests/ui/SUMMARY.md and update rustc dev guide on error-patternOneirical-4/+4
2025-07-24Rollup merge of #144320 - lolbinarycat:rustdoc-search_index-BTreeMap-str, ↵León Orell Valerian Liehr-3/+16
r=GuillaumeGomez rustdoc: avoid allocating a temp String for aliases in search index Here's the optimization I talked about in https://github.com/rust-lang/rust/pull/143988#discussion_r2208524163 I got around the Serialize issue using the newtype pattern. The wrapper type could be factored out into a helper that would work with anything that impls `AsRef<&str>`, but I'm not sure if that would be helpful anywhere else. r? ``````@GuillaumeGomez``````
2025-07-24Rollup merge of #144317 - lolbinarycat:tidy-obey-build.npm, r=KobzolLeón Orell Valerian Liehr-4/+14
pass build.npm from bootstrap to tidy and use it for npm install followup to rust-lang/rust#142924 r? ```@Kobzol```
2025-07-24Rollup merge of #144218 - Noratrieb:target-spec-json-de-jank, r=fee1-deadLeón Orell Valerian Liehr-1/+2
Use serde for target spec json deserialize The previous manual parsing of `serde_json::Value` was a lot of complicated code and extremely error-prone. It was full of janky behavior like sometimes ignoring type errors, sometimes erroring for type errors, sometimes warning for type errors, and sometimes just ICEing for type errors (the icing on the top). Additionally, many of the error messages about allowed values were out of date because they were in a completely different place than the FromStr impls. Overall, the system caused confusion for users. I also found the old deserialization code annoying to read. Whenever a `key!` invocation was found, one had to first look for the right macro arm, and no go to definition could help. This PR replaces all this manual parsing with a 2-step process involving serde. First, the string is parsed into a `TargetSpecJson` struct. This struct is a 1:1 representation of the spec JSON. It already parses all the enums and is very simple to read and write. Then, the fields from this struct are copied into the actual `Target`. The reason for this two-step process instead of just serializing into a `Target` is because of a few reasons 1. There are a few transformations performed between the two formats 2. The default logic is implemented this way. Otherwise all the default field values would have to be spelled out again, which is suboptimal. With this logic, they fall out naturally, because everything in the json struct is an `Option`. Overall, the mapping is pretty simple, with the vast majority of fields just doing a 1:1 mapping that is captured by two macros. I have deliberately avoided making the macros generic to keep them simple. All the `FromStr` impls now have the error message right inside them, which increases the chance of it being up to date. Some "`from_str`" impls were turned into proper `FromStr` impls to support this. The new code is much less involved, delegating all the JSON parsing logic to serde, without any manual type matching. This change introduces a few breaking changes for consumers. While it is possible to use this format on stable, it is very much subject to change, so breaking changes are expected. The hope is also that because of the way stricter behavior, breaking changes are easier to deal with, as they come with clearer error messages. 1. Invalid types now always error, everywhere. Previously, they would sometimes error, and sometimes just be ignored (which meant the users JSON was still broken, just silently!) 2. This now makes use of `deny_unknown_fields` instead of just warning on unused fields, which was done previously. Serde doesn't make it easy to get such warning behavior, which was the primary reason that this now changed. But I think error behavior is very reasonable too. If someone has random stale fields in their JSON, it is likely because these fields did something at some point but no longer do, and the user likely wants to be informed of this so they can figure out what to do. This is also relevant for the future. If we remove a field but someone has it set, it probably makes sense for them to take a look whether they need this and should look for alternatives, or whether they can just delete it. Overall, the JSON is made more explicit. This is the only expected breakage, but there could also be small breakage from small mistakes. All targets roundtrip though, so it can't be anything too major. fixes rust-lang/rust#144153
2025-07-24Rollup merge of #144014 - dianne:edition-guide-links, r=estebankLeón Orell Valerian Liehr-1/+1
don't link to the nightly version of the Edition Guide in stable lints As reported in rust-lang/rust#143557 for `rust_2024_incompatible_pat`, most future-Edition-incompatibility lints link to the nightly version of the Edition Guide; the lints were written before their respective Editions (and their guides) stabilized. But now that Rusts 2021 and 2024 are stable, these lints are emitted on stable versions of the compiler, where it makes more sense to present users with links that don't say "nightly" in them. This does not change the link for `rust_2024_incompatible_pat`. That's handled in rust-lang/rust#144006.