Commit graph

169887 commits

Author SHA1 Message Date
bors
2f1bd3f378 Auto merge of #150844 - fmease:mv-ace-tests, r=BoxyUwU
mGCA: Move tests for assoc const bindings (formerly ACE) into dedicated directory & replace more mentions of ACE

Split out of PR rust-lang/rust#150843.
As discussed.

Somewhat obvious underlying principle: If the test checks basic or core parts of assoc const bindings and nothing else, move it, otherwise leave it even if it contains ACEs.

Motivation: It makes a lot easier for me to continue working on ACE efficiently.

r? @BoxyUwU
2026-01-12 20:08:40 +00:00
bors
aefa10405d Auto merge of #151003 - matthiaskrgr:rollup-wvnF9sN, r=matthiaskrgr
Rollup of 8 pull requests

Successful merges:

 - rust-lang/rust#150861 (Folding/`ReErased` cleanups)
 - rust-lang/rust#150869 (Emit error instead of delayed bug when meeting mismatch type for const tuple)
 - rust-lang/rust#150920 (Use a hook to decouple `rustc_mir_transform` from `rustc_mir_build`)
 - rust-lang/rust#150941 (rustc_parse_format: improve diagnostics for unsupported python numeric grouping)
 - rust-lang/rust#150972 (Rename EII attributes slightly (being consistent in naming things foreign items, not extern items))
 - rust-lang/rust#150980 (Use updated indexes to build reverse map for delegation generics)
 - rust-lang/rust#150986 (std: Fix size returned by UEFI tcp4 read operations)
 - rust-lang/rust#150996 (Remove `S-waiting-on-bors` after a PR is merged)

r? @ghost
2026-01-12 16:43:20 +00:00
bors
137716908d Auto merge of #150786 - reddevilmidzy:mgca-array, r=BoxyUwU
mGCA: Support array expression as direct const arguments

tracking issue: rust-lang/rust#132980
resolve: rust-lang/rust#150612

Support array expression as direct const arguments (e. g. [1, 2, N]) in min_generic_const_args.

todo:
* [x] Rebase another mGCA PR
* [x] Add more test case
* [x] Modify clippy code
2026-01-12 13:26:21 +00:00
Matthias Krüger
79445c315e
Rollup merge of #150861 - folding-cleanups, r=lcnr
Folding/`ReErased` cleanups

Various cleanups I found while reading this code closely, mostly involving folding and the use of `ReErased`.

r? @lcnr
2026-01-12 13:32:07 +01:00
rust-bors[bot]
b115ea2e6a
Auto merge of #150959 - Kobzol:bors-email-3, r=marcoieni
Use the old homu bors e-mail address again

Now that new bors knows how to use the old homu e-mail address (https://github.com/rust-lang/bors/pull/614), we can revert to the old address. I modified the code to keep compatibility with both addresses, so that everything should still work for every merged commit in the past few days. In a few weeks/months, we could remove the temporary bors e-mail address, as at that point no one will likely care about these few merged commits anymore.

Should not be merged until https://github.com/rust-lang/bors/pull/614 is deployed, although the current version in `main` should already mostly work with both addresses, except for CI postprocessing statistics.

Should be backported.
2026-01-12 10:04:23 +00:00
rust-bors[bot]
561364e4d5
Auto merge of #150758 - ColinFinck:rust-mingw-package-as-extensions, r=jieyouxu
build-manifest: Add `rust-mingw` also as extension for "pc-windows-gnu" hosts.

This should enable `rustup component add --target aarch64-pc-windows-gnullvm rust-mingw` when running an `x86_64-pc-windows-gnullvm` toolchain (and vice-versa).

Which itself enables proper cross-compiling of Windows ARM64 binaries on a Windows x64 host without using commercial MSVC.

CC @mati865
2026-01-12 05:35:38 +00:00
Matthias Krüger
0a7d5f9f73
Rollup merge of #150438 - m68k-elf-platform-doc-update, r=Noratrieb
Remove mentions of debootstrap and chroots from the m68k-unknown-none-elf platform support doc

I left the mentions of qemu-user-static as it's one of the only easily accessible emulators for m68k, even though you would have to write your own `_start` and such. The C toolchain that is mentioned is also the easiest way I've found so far to get a linker, which is still needed unless I'm missing something.

closes rust-lang/rust#150414

r? @Noratrieb
2026-01-12 00:02:53 +01:00
Nicholas Nethercote
e7036b136f clippy: remove ty_has_erased_regions.
It duplicates `has_erased_regions` from the compiler.
2026-01-12 09:22:58 +11:00
Nicholas Nethercote
46d8c2beeb Clean up src/dst transmute mess.
- Remove the vacuous `Types`, which provides extremely little value.
- Make sure `src` comes before `dst` in all transmute-related functions.
  (Currently it's a mix: sometimes `src` is first, sometimes it is
  second`.)
2026-01-12 09:22:58 +11:00
rust-bors[bot]
7c41ee66db
Auto merge of #150932 - weihanglo:update-cargo, r=weihanglo
Update cargo submodule

5 commits in 8c133afcd5e0d69932fe11f5907683723f8d361d..6d1bd93c47f059ec1344cb31e68a2fb284cbc6b1
2026-01-09 03:50:15 +0000 to 2026-01-10 12:53:59 +0000
- fix: preserve `dep_name` for build script metadata  (rust-lang/cargo#16494)
- refactor(toml): clarify `to_dependency` for config patch (rust-lang/cargo#16492)
- Add `--id` flag to `cargo report timings` and `cargo report rebuilds` (rust-lang/cargo#16490)
- Display lockfile path in very verbose mode when blocking (rust-lang/cargo#16491)
- fix(info): resolve underscore vs hyphen mismatch in schema lookup (rust-lang/cargo#16455)

---

An extra submodule update right after <https://github.com/rust-lang/rust/pull/150739> due to a relatively impactful nightly regression <https://github.com/rust-lang/cargo/issues/16493>
2026-01-11 15:36:33 +00:00
Jakub Beránek
cf580b8e2b
Revert bors email to the original homu one 2026-01-11 11:32:32 +01:00
Jakub Beránek
faea581d45
Remove references to bors2 2026-01-11 10:35:13 +01:00
Matthias Krüger
55383badd3
Rollup merge of #150873 - reenable-gcc-download-ci, r=marcoieni
Reenable GCC CI download

Now that we have the `gcc-dev` artifacts on CI. However, I forgot to bump download-ci-gcc-stamp before 🤦 So I will also have to bump it for this PR.
2026-01-11 09:56:49 +01:00
Matthias Krüger
1a1a11368d
Rollup merge of #150812 - bump-cargotest-diesel, r=Mark-Simulacrum
Bump `diesel` to the most recent commit in `cargotest`

`cargotest` can only detect the worst offenders (like tests failing, or hard compiler errors / ICEs), but regardless, bumping `diesel` to a way more recent version hopefully contributes slightly towards helping us not break `diesel` if at all possible.

That is, AFAIUI, this will not help catch [#t-compiler/prioritization/alerts > #149845 Diesel stops building with nightly-2025-12-10 @ 💬](https://rust-lang.zulipchat.com/#narrow/channel/245100-t-compiler.2Fprioritization.2Falerts/topic/.23149845.20Diesel.20stops.20building.20with.20nightly-2025-12-10/near/566975273) because we cap-lints to `warn` in `cargotest`.

Most recent commit as of the time of this PR anyway.
2026-01-11 09:56:42 +01:00
Matthias Krüger
7a9ef99a56
Rollup merge of #150668 - stdio-swap, r=Mark-Simulacrum,RalfJung
Unix implementation for stdio set/take/replace

Tracking issue: https://github.com/rust-lang/rust/issues/150667
ACP: https://github.com/rust-lang/libs-team/issues/500
2026-01-11 09:56:38 +01:00
rust-bors[bot]
ad04f76d84
Auto merge of #150912 - matthiaskrgr:rollup-SHXgjYS, r=matthiaskrgr
Rollup of 11 pull requests

Successful merges:

 - rust-lang/rust#150269 (Remove inactive nvptx maintainer)
 - rust-lang/rust#150713 (mgca: Type-check fields of struct expr const args)
 - rust-lang/rust#150765 (rustc_parse_format: improve error for missing `:` before `?` in format args)
 - rust-lang/rust#150847 (Fix broken documentation links to SipHash)
 - rust-lang/rust#150867 (rustdoc_json: Remove one call to `std::mem::take` in `after_krate`)
 - rust-lang/rust#150872 (Fix some loop block coercion diagnostics)
 - rust-lang/rust#150874 (Ignore `rustc-src-gpl` in fast try builds)
 - rust-lang/rust#150875 (Refactor artifact keep mode in bootstrap)
 - rust-lang/rust#150876 (Mention that `rustc_codegen_gcc` is a subtree in `rustc-dev-guide`)
 - rust-lang/rust#150882 (Supress unused_parens lint for guard patterns)
 - rust-lang/rust#150884 (Update bors email in CI postprocessing step)

Failed merges:

 - rust-lang/rust#150869 (Emit error instead of delayed bug when meeting mismatch type for const tuple)

r? @ghost
2026-01-10 22:52:39 +00:00
kirk
ab1caae912 move sentence about gnu ld from 'Building' to 'Requirements' section 2026-01-10 17:20:34 +00:00
kirk
767291606e Remove mentions of debootstrap and chroots from the m68k-unknown-none-elf platform support doc 2026-01-10 17:03:18 +00:00
Weihang Lo
8332887f36
Update cargo submodule 2026-01-10 11:04:54 -05:00
rust-bors[bot]
f57eac1bf9
Auto merge of #146923 - oli-obk:comptime-reflect, r=BoxyUwU
Reflection MVP

I am opening this PR for discussion about the general design we should start out with, as there are various options (that are not too hard to transition between each other, so we should totally just pick one and go with it and reiterate later)

r? @scottmcm and @joshtriplett

project goal issue: https://github.com/rust-lang/rust-project-goals/issues/406
tracking issue: https://github.com/rust-lang/rust/issues/146922

The design currently implemented by this PR is

* `TypeId::info` (method, usually used as `id.info()` returns a `Type` struct
* the `Type` struct has fields that contain information about the type
* the most notable field is `kind`, which is a non-exhaustive enum over all possible type kinds and their specific information. So it has a `Tuple(Tuple)` variant, where the only field is a `Tuple` struct type that contains more information (The list of type ids that make up the tuple).
* To get nested type information (like the type of fields) you need to call `TypeId::info` again.
* There is only one language intrinsic to go from `TypeId` to `Type`, and it does all the work

An alternative design could be

* Lots of small methods (each backed by an intrinsic) on `TypeId` that return all the individual information pieces (size, align, number of fields, number of variants, ...)
* This is how C++ does it (see https://lemire.me/blog/2025/06/22/c26-will-include-compile-time-reflection-why-should-you-care/ and https://isocpp.org/files/papers/P2996R13.html#member-queries)
* Advantage: you only get the information you ask for, so it's probably cheaper if you get just one piece of information for lots of types (e.g. reimplementing size_of in terms of `TypeId::info` is likely expensive and wasteful)
* Disadvantage: lots of method calling (and `Option` return types, or "general" methods like `num_fields` returning 0 for primitives) instead of matching and field accesses
* a crates.io crate could implement `TypeId::info` in terms of this design

The backing implementation is modular enough that switching from one to the other is probably not an issue, and the alternative design could be easier for the CTFE engine's implementation, just not as nice to use for end users (without crates wrapping the logic)

One wart of this design that I'm fixing in separate branches is that `TypeId::info` will panic if used at runtime, while it should be uncallable
2026-01-10 15:00:14 +00:00
Matthias Krüger
0161646212
Rollup merge of #150876 - gcc-dev-guide, r=Kobzol
Mention that `rustc_codegen_gcc` is a subtree in `rustc-dev-guide`

Was asked on [zulip](https://rust-lang.zulipchat.com/#narrow/channel/386786-rustc-codegen-gcc/topic/Subtree.20handling/with/564354089).

r? @RalfJung
2026-01-10 08:34:07 +01:00
Matthias Krüger
980e6ad91d
Rollup merge of #150875 - bootstrap-refactor-build-outputs, r=bjorn3
Refactor artifact keep mode in bootstrap

This makes it easier to understand which artifacts will be stored in the build stamp. Should help with https://github.com/rust-lang/rust/pull/145343.

Before, there were two booleans (keep .rmeta files and a special mode for rustc). I created an explicit enum for it instead. The mapping is:
- `(false, false)` => `ArtifactKeepMode::OnlyRlib`
- `(true, false)` => `ArtifactKeepMode::OnlyRmeta` (used for check/clippy builds)
- `(false, true)` => special rustc mode

r? @bjorn3
2026-01-10 08:34:00 +01:00
Matthias Krüger
da772d5195
Rollup merge of #150874 - fast-try-build-src-gpl, r=jieyouxu
Ignore `rustc-src-gpl` in fast try builds

I noticed that fast try builds now build this new component (unnecessarily).
2026-01-10 08:33:59 +01:00
Matthias Krüger
68bd262521
Rollup merge of #150867 - chore-librustdoc-json-mem-take, r=GuillaumeGomez
rustdoc_json: Remove one call to `std::mem::take` in `after_krate`

This patch removes one call to `std::mem::take` to save two `memcpy`s: `JsonRenderer::index` can be quite large as noted https://github.com/rust-lang/rust/pull/142335. `self.index` can be passed directly to `types::Crate`. This removal makes `self` immutable.

The private `serialize_and_write` method is moved as a function: the `self` argument is replaced by `sess: &Session`. This `&Session` was fetched earlier in `after_krate` in all cases. This change allows to call `serialize_and_write` after `output_crate` is created, without having a conflict around the move of `self`: the borrow checker is now happy.

I wasn't able to measure the performance impact though because I don't know how to modify `rustc-perf` as [@nnethercote  did](https://github.com/rust-lang/rust/pull/142335#issuecomment-2961252113) (sorry).

---

Follow up of https://github.com/rust-lang/rust/pull/142335.

r? @nnethercote
2026-01-10 08:33:58 +01:00
Matthias Krüger
1df4902575
Rollup merge of #150269 - update-nvptx-maintainers, r=jieyouxu
Remove inactive nvptx maintainer

Since I just saw the discussion in [#t-compiler > Starting to enforce Tier 2-to-3 downgrade](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Starting.20to.20enforce.20Tier.202-to-3.20downgrade/with/564788312), and I saw him pinged on PRs or issues. His last active open-source contributions were in early 2022: https://github.com/RDambrosio016 and IIRC he also mentioned that he had moved on.

ping @RDambrosio016 so you can confirm or correct me, if you want to chime in. I also pinged him on Zulip.

cc @kjetilkjeka who is the other maintainer and active on related issues/prs for his target.

I'd leave it open for a while, but
r? @jieyouxu
2026-01-10 08:33:56 +01:00
reddevilmidzy
522be7f1c0 Fix clippy 2026-01-10 12:45:17 +09:00
reddevilmidzy
618b0b5464 Lower hir::ConstArgKind::Array to a ValTree 2026-01-10 12:41:50 +09:00
reddevilmidzy
fc06a57a78 Introduce hir::ConstArgKind::Array 2026-01-10 12:41:50 +09:00
rust-bors[bot]
2b82e05da4
Auto merge of #150900 - Urgau:rollup-og7uEW9, r=Urgau
Rollup of 9 pull requests

Successful merges:

 - rust-lang/rust#149318 (Implement partial_sort_unstable for slice)
 - rust-lang/rust#150805 (Fix ICE in inline always warning emission.)
 - rust-lang/rust#150822 (Fix for ICE: eii: fn / macro rules None in find_attr())
 - rust-lang/rust#150853 (std: sys: fs: uefi: Implement File::read)
 - rust-lang/rust#150855 (std: sys: fs: uefi: Implement File::tell)
 - rust-lang/rust#150881 (Fix std::fs::copy on WASI by setting proper OpenOptions flags)
 - rust-lang/rust#150891 (Fix a trivial typo in def_id.rs)
 - rust-lang/rust#150892 (Don't check `[mentions]` paths in submodules from tidy)
 - rust-lang/rust#150894 (cg_llvm: add a pause to make comment less confusing)

r? @ghost
2026-01-10 01:19:39 +00:00
Urgau
90de6e523a
Rollup merge of #150892 - tidy-triagebot-mentions-submodules, r=tgross35
Don't check `[mentions]` paths in submodules from tidy

As we were reminded in [#triagebot > Mentions glob matching](https://rust-lang.zulipchat.com/#narrow/channel/224082-triagebot/topic/Mentions.20glob.20matching/with/567093226), triagebot cannot see changes in submodules.

So let's reflect that in the `tidy` check to avoid accidentally adding paths inside submodules.

I tested it with these entries:

```toml
[mentions."src/tools/cargo"]
cc = ["@ehuss"]
[mentions."src/tools/cargo/"]
cc = ["@ehuss"]
[mentions."src/tools/cargo/*"]
cc = ["@ehuss"]
[mentions."src/tools/cargo/README.md"]
cc = ["@ehuss"]
```

and got (as expected):

```
tidy [triagebot]: triagebot.toml [mentions.*] 'src/tools/cargo/README.md' cannot match inside a submodule
tidy [triagebot]: triagebot.toml [mentions.*] contains 'src/tools/cargo/*' which doesn't match any file or directory in the repository
```
2026-01-09 23:28:26 +01:00
rust-bors[bot]
1191620b8c
Auto merge of #150818 - flip1995:clippy-subtree-update, r=Manishearth,samueltardieu
Clippy subtree update

r? Manishearth

Cargo.lock update due to askama bump to be in line with the Rust repo.
2026-01-09 22:04:59 +00:00
Urgau
9d2ce87810 Don't check [mentions] paths in submodules from tidy 2026-01-09 21:02:08 +01:00
Jakub Beránek
642663596d
Fix unpacking of gcc-dev component 2026-01-09 17:00:49 +01:00
rust-bors[bot]
a3f2d5abe4
Auto merge of #150739 - weihanglo:update-cargo, r=weihanglo
Update cargo submodule

27 commits in 94c368ad2b9db0f0da5bdd8421cea13786ce4412..8c133afcd5e0d69932fe11f5907683723f8d361d
2025-12-26 19:39:15 +0000 to 2026-01-09 03:50:15 +0000
- Isolate build script metadata progation between std and non-std crates (rust-lang/cargo#16489)
- Add Clippy like lint groups (rust-lang/cargo#16464)
- feat: in-memory only `Manifest` (rust-lang/cargo#16409)
- Fixed incorrect version comparision during build script dependency selection (rust-lang/cargo#16486)
- refactor: new type for unit index (rust-lang/cargo#16485)
- feat(test): Make CARGO_BIN_EXE_ available at runtime  (rust-lang/cargo#16421)
- fix(package): detect dirty files when run from workspace member (rust-lang/cargo#16479)
- fix(timing)!: remove `--timings=&lt;FMT&gt;` optional format values (rust-lang/cargo#16420)
- docs(unstable): expand docs for `-Zbuild-analysis` (rust-lang/cargo#16476)
- test: add `-Zunstable-options` with custom targets (rust-lang/cargo#16467)
- feat(report): add cargo report rebuilds  (rust-lang/cargo#16456)
- feat(test-support): Use test name for dir when running tests (rust-lang/cargo#16121)
- refactor: Migrate some cases to expect/reason (rust-lang/cargo#16461)
- docs(build-script): clarify OUT_DIR is not cleaned between builds (rust-lang/cargo#16437)
- chore: Update dependencies (rust-lang/cargo#16460)
- Update handlebars to 6.4.0 (rust-lang/cargo#16457)
- chore(deps): update alpine docker tag to v3.23 (rust-lang/cargo#16454)
- Any build scripts can now use cargo::metadata=KEY=VALUE (rust-lang/cargo#16436)
- fix(log): add `dependencies` field to `UnitRegistered` (rust-lang/cargo#16448)
- Implement fine grain locking for `build-dir` (rust-lang/cargo#16155)
- feat(resolver): List features when no close match (rust-lang/cargo#16445)
- feat(report): new command `cargo report sessions` (rust-lang/cargo#16428)
- feat (patch): Display where the patch was defined in patch-related error messages (rust-lang/cargo#16407)
- test(build-rs): Reduce from 'build' to 'check' where possible (rust-lang/cargo#16444)
- feat(toml): TOML 1.1 parse support (rust-lang/cargo#16415)
- feat(report): support --manifest-path in `cargo report timings` (rust-lang/cargo#16441)
- fix(vendor): recursively filter git files in subdirectories (rust-lang/cargo#16439)
2026-01-09 15:35:19 +00:00
Jakub Beránek
47f28fc71e
Refactor artifact keep mode in bootstrap 2026-01-09 15:11:30 +01:00
Guillaume Gomez
01e8f14867 Mention that rustc_codegen_gcc is a subtree in rustc-dev-guide 2026-01-09 15:03:33 +01:00
Jakub Beránek
5af08c0c28
Ignore rustc-src-gpl in fast try builds 2026-01-09 14:40:54 +01:00
Jakub Beránek
58a9fdded8
Bump download-ci-gcc-stamp 2026-01-09 14:36:24 +01:00
Jakub Beránek
87d716701e
Reenable GCC CI download 2026-01-09 14:35:15 +01:00
Guillaume Gomez
8f89503777
Rollup merge of #150864 - fix-aarch64-platform-docs, r=jdonszelmann
The aarch64-unknown-none target requires NEON, so the docs were wrong.

As discussed [on zulip](https://rust-lang.zulipchat.com/#narrow/channel/242906-t-compiler.2Farm/topic/aarch64-unknown-none.20platform.20docs/with/567045743), we think the docs for the aarch64-unknown-none target don't match the target spec.
2026-01-09 12:00:03 +01:00
Guillaume Gomez
19769da8f1
Rollup merge of #150821 - remove-test, r=jackh726
tests/ui/borrowck/issue-92157.rs: Remove (bug not fixed)

The bug the test tests for is masked by the wrong `#[lang = "start"]` signature. If the signature is corrected, the test builds. But that is not because the bug is fixed, but because the test has been changed too much from the original reproducer. The original reproducer still ICE:s. See https://github.com/rust-lang/rust/issues/92157#issuecomment-3722060317.

But that's fine since in the latest compiler says:

> note: using internal features is not supported and expected to cause internal compiler errors when used incorrectly

So let's remove the test and close the issue as "won't fix". See https://github.com/rust-lang/rust/issues/92157#issuecomment-3725036997.

r? @JohnTitor since you added the test in https://github.com/rust-lang/rust/pull/106878
2026-01-09 12:00:02 +01:00
Guillaume Gomez
fe307c5452
Rollup merge of #150816 - method-anchor, r=camelid
Fix trait method anchor disappearing before user can click on it

A good example of this bug is going to https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir_analysis/collect/struct.ItemCtxt.html#impl-HirTyLowerer%3C'tcx%3E-for-ItemCtxt%3C'tcx%3E, and then try to click on the `§` anchor of the `tcx` method.

The solution to this bug is to simply "glue" the anchor to the method, so when the mouse cursor moves to it, there is no gap between the two, preventing the anchor to disappear (hopefully this explanation doesn't make sense only to me ^^').

First commit fixes the bug by expanding the anchor size.
Second commit is a small clean-up of the GUI test.
Third commit actually adds the GUI regression test.

cc @BoxyUwU
r? @camelid
2026-01-09 12:00:01 +01:00
Guillaume Gomez
e99f5f63a6
Rollup merge of #150808 - derive-internals, r=jhpratt
rename the `derive_{eq, clone_copy}` features to `*_internals`

Features like `derive_from` and `derive_coerce_pointee` refer to actual unstable derive macros, but the `derive_eq` and `derive_clone_copy` features are internal hacks. Rename them accordingly by adding the suffix `_internals`.
2026-01-09 12:00:00 +01:00
Guillaume Gomez
3daf9935c5
Rollup merge of #150561 - semiopaque, r=BoxyUwU
Finish transition from `semitransparent` to `semiopaque` for `rustc_macro_transparency`

Since it's a bit annoying to have different names for the same thing.

My understanding is that this is just internal stuff that is not part of any public API even tough rust-analyzer knows about it.

Continuation of
- https://github.com/rust-lang/rust/pull/139084.

Discovered while investigating
- https://github.com/rust-lang/rust/issues/150514
2026-01-09 11:59:59 +01:00
Guillaume Gomez
09575ecde1
Rollup merge of #150385 - fix-expr-can-have-side-effects, r=jdonszelmann,samueltardieu
fix `Expr::can_have_side_effects` for `[x; N]` style array literal and binary expressions

AFAIK `[0; 3]` is basically a syntax sugar for `[0, 0, 0]` so it should return whether the repeat's element can have side effects, like what it does on arrays.
And it seems that the rule for unary operators and indexings can be applied to binary operators as well.
2026-01-09 11:59:58 +01:00
Philipp Krones
330358a197
Further Clippy fixes for Tup/Literal ConstArgKind 2026-01-09 11:59:23 +01:00
Ivan Enderlin
b9ae4f7bf7
rustdoc_json: Remove one call to std::mem::take in after_krate.
This patch removes one call to `std::mem::take` to save two
`memcpy`s: `JsonRenderer::index` can be quite large as noted
https://github.com/rust-lang/rust/pull/142335. `self.index` can be
passed directly to `types::Crate`. This removal makes `self` immutable.

The private `serialize_and_write` method is moved as a function: the
`self` argument is replaced by `sess: &Session`. This `&Session` was
fetched earlier in `after_krate` in all cases. This change allows to
call `serialize_and_write` after `output_crate` is created, without
having a conflict around the move of `self`: the borrow checker is now
happy.
2026-01-09 11:54:53 +01:00
Samuel Tardieu
a3690a2d25
Make Clippy compile with ConstArgKind::Tup() 2026-01-09 10:37:56 +01:00
Philipp Krones
d9c168546f
Merge commit '500e0ff187' into clippy-subtree-update 2026-01-09 10:37:00 +01:00
Jonathan Pallant
025ac8f512
The aarch64-unknown-none target requires NEON, so the docs were wrong. 2026-01-09 08:37:01 +00:00