Commit Graph

169999 Commits

Author SHA1 Message Date
bors 158ae9ee50 Auto merge of #151360 - JonathanBrouwer:rollup-UpAM1gc, r=JonathanBrouwer
Rollup of 4 pull requests

Successful merges:

 - rust-lang/rust#151071 (Generate openmp metadata)
 - rust-lang/rust#151302 (add lint test)
 - rust-lang/rust#151338 (Factor out diagnostic slug checking from `DiagnosticDerive` )
 - rust-lang/rust#151354 (ci: Move lockfile updates to a script)

r? @ghost
2026-01-19 09:40:32 +00:00
Jamie Hill-Daniel 0895c4cbe6 ci: Move lockfile updates to a script 2026-01-19 05:23:45 +00:00
Stuart Cook 20b39b812c Rollup merge of #151341 - miri, r=RalfJung
miri subtree update

Subtree update of `miri` to https://github.com/rust-lang/miri/commit/2d0a4f41fc75dd544d50ee0d9cf6cf7d2b3cc3f6.

Created using https://github.com/rust-lang/josh-sync.

r? @ghost
2026-01-19 15:28:02 +11:00
Stuart Cook c7e286492e Rollup merge of #151080 - dist/rustc-docs-target-fallback, r=clubby789
fix(build-manifest): enable docs target fallback for `rustc-docs`
2026-01-19 15:28:01 +11:00
Ralf Jung e582ac3d8f Merge pull request #4813 from ChillFish8/avx512/add-pack-instructions
add avx512 `pack*` family of instructions to shims
2026-01-18 19:00:34 +00:00
Ralf Jung 41204bf780 Merge pull request #4800 from hulxv/refactor/simplify-libc-tests/libc-fs-symlink
Refactor `libc-fs-symlink` tests to use errno_result
2026-01-18 18:41:12 +00:00
chillfish8 43fb39f3fe Add avx512 pack* family of instructions 2026-01-18 18:31:11 +00:00
Ralf Jung c367dfde69 shims: add FIXME for missing direct tests 2026-01-18 18:08:16 +01:00
Ralf Jung 255b483f2e Merge pull request #4772 from hulxv/refactor/simplify-libc-tests/libc-epoll-blocking
Refactor epoll tests to use errno_result and improve notification checks
2026-01-18 14:59:05 +00:00
Ralf Jung 2ef85d7894 use epoll_ctl_add more often 2026-01-18 15:30:05 +01:00
bors 621d76794c Auto merge of #151254 - Mark-Simulacrum:new-version, r=Mark-Simulacrum
Bump version to 1.95.0

https://forge.rust-lang.org/release/process.html#bump-the-stable-version-number-friday-the-week-before

r? @Mark-Simulacrum
2026-01-18 08:15:30 +00:00
bors fe98ddcfcf Auto merge of #151232 - fmease:rustdoc-dont-eval-assoc-consts, r=yotamofek
rustdoc: Stop unconditionally evaluating the initializer of associated consts

See the descriptions of the added tests for details.

Fixes rust-lang/rust#131625.
Fixes [after beta-1.93 backport] rust-lang/rust#149635.
Fixes rust-lang/rust#150312.

Supersedes rust-lang/rust#150629 IINM.

CC @cuviper (https://github.com/rust-lang/rust/issues/149635#issuecomment-3761125727)
r? @GuillaumeGomez or @yotamofek (rust-lang/rust#150629)
2026-01-17 16:15:18 +00:00
Mark Rousskov ad3e082afe Bump version to 1.95.0 2026-01-17 10:19:26 -05:00
León Orell Valerian Liehr ac8e8505b7 rustdoc: Stop unconditionally evaluating the initializer of associated consts 2026-01-17 12:12:36 +01:00
bors 844f13103a Auto merge of #151228 - cyrgani:less-feature, r=jhpratt
remove multiple unhelpful `reason = "..."` values from `#[unstable(...)]` invocations

The vast majority of `#[unstable()]` attributes already has no explicit reason specified. This PR removes the `reason = "..."` value for the following unhelpful or meaningless reasons: 
* "recently added"
* "new API"
* "recently redesigned"
* "unstable"

An example of how the message looks with and without a reason:

```rust
fn main() {
    Vec::<()>::into_parts;
    Vec::<()>::const_make_global;
}
```

```
error[E0658]: use of unstable library feature `box_vec_non_null`: new API
 --> src/main.rs:2:5
  |
2 |     Vec::<()>::into_parts;
  |     ^^^^^^^^^^^^^^^^^^^^^
  |
  = note: see issue #130364 <https://github.com/rust-lang/rust/issues/130364> for more information
  = help: add `#![feature(box_vec_non_null)]` to the crate attributes to enable
  = note: this compiler was built on 2026-01-15; consider upgrading it if it is out of date

error[E0658]: use of unstable library feature `const_heap`
 --> src/main.rs:3:5
  |
3 |     Vec::<()>::const_make_global;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  |
  = note: see issue #79597 <https://github.com/rust-lang/rust/issues/79597> for more information
  = help: add `#![feature(const_heap)]` to the crate attributes to enable
  = note: this compiler was built on 2026-01-15; consider upgrading it if it is out of date
```

Most of the remaining reasons after this are something similar to "this is an implementation detail for XYZ" or "this is not public". If this PR is approved, I'll look into those next. 

The PR also removes the `fd_read` feature gate. It only consists of one attribute applied to an implementation inside a module that is already private and unstable and should not be needed.
2026-01-17 06:27:42 +00:00
bors defdb83d4b Auto merge of #151234 - Zalathar:rollup-mtOIaDC, r=Zalathar
Rollup of 5 pull requests

Successful merges:

 - rust-lang/rust#151092 (Generate macro expansion for rust compiler crates docs)
 - rust-lang/rust#151120 (Fix deprecated attribute intra-doc link not resolved in the right location on reexported item)
 - rust-lang/rust#151207 (Preliminary match/capture test cleanup for PR 150681)
 - rust-lang/rust#151221 (Reorganizing `tests/ui/issues` 5 tests [1/N])
 - rust-lang/rust#151222 (feat: Support references in reflection type info)

r? @ghost
2026-01-17 03:10:02 +00:00
Stuart Cook 176bf87df0 Rollup merge of #151120 - ice-deprecated-note-on-reexport, r=lolbinarycat
Fix deprecated attribute intra-doc link not resolved in the right location on reexported item

Fixes https://github.com/rust-lang/rust/issues/151028.
Follow-up of https://github.com/rust-lang/rust/pull/150721.

So when we resolve an intra-doc link, its current context (the module from which we resolve in short) is very important. However, when we use an intra-doc link in a `#[deprecated]` attribute on a reexported item, we were using the context of the reexported item and not of the `use` itself. Meaning that if you have an intra-doc link `std::mem::drop` on an item from another crate (let's say `core`), then the import will simply fail since there is no `std` dependency.

Now comes the not so funny fix: at this point, we don't know anymore where the attribute came from (ie, from the reexport or from the reexported item) since we already merged the attribute at this point. The solution I found to go around this problem is to check if the item span contains the attribute, and if not, then we use the `inline_stmt_id` as context instead of the item's ID. I'm not super happy and I'm sure we'll find corner cases in the future (like with macros), however there are a few things that mitigate this fix:
1. The only way to generate an attribute with a macro with its item while having different spans is by using proc-macros. In that case, we can always default to the `inline_stmt_id` as context and be fine, but I guess we'll see when get there.
2. It only concerns reexports, so the area of the problem is quite restricted.

Hopefully this explanation made sense. :)

cc @folkertdev
r? @lolbinarycat
2026-01-17 11:47:18 +11:00
Stuart Cook 3157d50d5b Rollup merge of #151092 - generate-macro-expansion-compiler-crates-docs, r=jieyouxu
Generate macro expansion for rust compiler crates docs

Re-enable https://github.com/rust-lang/rust/pull/150022, which was disabled in https://github.com/rust-lang/rust/pull/149831 because some fixes hadn't been merged then.

r? @jieyouxu
2026-01-17 11:47:18 +11:00
bors 1a9f1686b2 Auto merge of #151225 - weihanglo:update-cargo, r=weihanglo
Update cargo submodule

15 commits in 8c133afcd5e0d69932fe11f5907683723f8d361d..85eff7c80277b57f78b11e28d14154ab12fcf643
2026-01-09 03:50:15 +0000 to 2026-01-15 16:18:08 +0000
- fix(lockfile): switch to `resolver.lockfile-path` config (rust-lang/cargo#16510)
- Moved build-script bins to `deps` directory (rust-lang/cargo#16515)
- Invalidate the whole build cache when `-Zno-embed-metadata` changes (rust-lang/cargo#16513)
- Do not create examples dir in build dir with new layout (rust-lang/cargo#16514)
- fix(git): avoid partial oid got zero padded (rust-lang/cargo#16511)
- Optimize cargo locate-project --workspace (rust-lang/cargo#16423)
- chore: Update typos (rust-lang/cargo#16507)
- refactor(git): remove unnecessary serialization (rust-lang/cargo#16505)
- fix(build-std): std link metadata propagate to user (rust-lang/cargo#16496)
- Improve error message for missing dependencies (rust-lang/cargo#16500)
- 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)

r? ghost
2026-01-16 23:50:37 +00:00
Weihang Lo 500c94f945 Update cargo submodule 2026-01-16 15:45:53 -05:00
Matthias Krüger 2c2b62260b Rollup merge of #151218 - crate-struct, r=clubby789
compiletest: Add `AuxCrate` struct with docs.

To make the code clearer.
2026-01-16 21:04:32 +01:00
Martin Nordholts 4530e26f4e compiletest: Add AuxCrate struct with docs.
To make the code clearer.
2026-01-16 18:41:37 +01:00
Jakub Beránek 41daada3bb Ship LLVM (rust-dev) in fast try builds again 2026-01-16 14:49:33 +01:00
cyrgani e45e4a7cc6 delete weird fd_read feature 2026-01-16 13:31:38 +00:00
Guillaume Gomez 7544563578 Only enable rustdoc --generate-macro-expansion option for stage builds higher than 1 2026-01-16 11:39:40 +01:00
The Miri Cronjob Bot c15cdfb9b4 Merge ref 'b6fdaf2a1573' from rust-lang/rust
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: rust-lang/rust@b6fdaf2a15
Filtered ref: rust-lang/miri@f982e90a7d
Upstream diff: https://github.com/rust-lang/rust/compare/44a5b55557c26353f388400d7da95527256fe260...b6fdaf2a15736cbccf248b532f48e33179614d40

This merge was created using https://github.com/rust-lang/josh-sync.
2026-01-15 05:08:30 +00:00
The Miri Cronjob Bot d59c47c2bc Prepare for merging from rust-lang/rust
This updates the rust-version file to b6fdaf2a15.
2026-01-15 05:01:05 +00:00
Jonathan Brouwer 92737cab34 Rollup merge of #151117 - reduce_deps, r=Kobzol
Avoid serde dependency in build_helper when not necessary

Run-make-support doesn't need the metrics code to be pulled in ever. And bootstrap only needs it in CI where build metrics support is enabled.
2026-01-14 22:30:00 +01:00
Jonathan Brouwer d23e780a57 Rollup merge of #150966 - arch-powerpc64le, r=petrochenkov
rustc_target: Remove unused Arch::PowerPC64LE

This variant has been added in https://github.com/rust-lang/rust/pull/147645, but actually unused since target_arch for powerpc64le- targets is "powerpc64". (The difference between powerpc64- and powerpc64le- targets is identified by target_endian.)

Note: This is an internal cleanup and does NOT remove `powerpc64le-*` targets.
2026-01-14 22:29:57 +01:00
Jonathan Brouwer 27e6ef9f6d Rollup merge of #150962 - rm/feed_const_ty, r=BoxyUwU
Remove `FeedConstTy` and provide ty when lowering const arg

r? @BoxyUwU

edit: BoxyUwU

`FeedConstTy` currently only provides the expected type of a const argument *sometimes* (e.g. previously array lengths did not do this). This causes problems with mGCA's directly represented const arguments which always need to know their expected type.
2026-01-14 22:29:57 +01:00
Jonathan Brouwer e04af73628 Rollup merge of #150586 - intra-doc-assoc-alias, r=GuillaumeGomez
rustdoc: Fix intra-doc link bugs involving type aliases and associated items

This PR:
- Add support for linking to fields of variants behind a type alias.
- Correctly resolve links to fields and variants behind a type alias to the alias's version of the docs.
- Refactor some intra-doc links code to make it simpler.
- Add tests for the status quo of linking to associated items behind aliases.

Future steps:
- Nail down the rules of when inherent and trait impls are inlined into an alias's docs, and when impls on the alias appear for the aliased type.
- Adjust the resolutions of intra-doc links, through aliases, to associated items based on these rules.

r? @GuillaumeGomez
2026-01-14 22:29:55 +01:00
Guillaume Gomez e4e2e8bd6f Fix deprecated attribute intra-doc link not resolved in the right location on reexported item 2026-01-14 21:52:30 +01:00
Taiki Endo 7d80e7d720 rustc_target: Remove unused Arch::PowerPC64LE
target_arch for powerpc64le- targets is "powerpc64".
2026-01-14 23:12:57 +09:00
bjorn3 2b209a69cf Avoid serde dependency in build_helper when not necessary 2026-01-14 13:21:16 +00:00
bors 8c52f735ab Auto merge of #151107 - JonathanBrouwer:rollup-9CIxxuZ, r=JonathanBrouwer
Rollup of 11 pull requests

Successful merges:

 - rust-lang/rust#149408 (refactor: remove Ord bound from BinaryHeap::new etc)
 - rust-lang/rust#150406 (Change some `matches!(.., .. if ..)` with let-chains)
 - rust-lang/rust#150723 (std: move `errno` and related functions into `sys::io`)
 - rust-lang/rust#150877 (resolve: Refactor away the side table `decl_parent_modules`)
 - rust-lang/rust#150902 (Update to_uppercase docs to avoid ß->SS example)
 - rust-lang/rust#151034 (std: Change UEFI env vars to volatile storage)
 - rust-lang/rust#151036 (Better handle when trying to iterate on a `Range` of a type that isn't `Step`)
 - rust-lang/rust#151067 (Avoid should-fail in two ui tests and a codegen-llvm test)
 - rust-lang/rust#151072 (also handle ENOTTY ioctl errors when checking pidfd -> pid support)
 - rust-lang/rust#151077 (Recognize potential `impl<const N: usize>` to `impl<N>` mistake)
 - rust-lang/rust#151096 (Remove `Deref`/`DerefMut` impl for `Providers`.)

Failed merges:

 - rust-lang/rust#150939 (resolve: Relax some asserts in glob overwriting and add tests)

r? @ghost
2026-01-14 13:12:51 +00:00
mu001999 80bd069138 Fix review comments 2026-01-14 20:59:41 +08:00
mu001999 e27fcfd28e Remove FeedConstTy 2026-01-14 20:59:41 +08:00
mu001999 d0b760369f Remove all usage of FeedConstTy::No 2026-01-14 20:59:38 +08:00
Jonathan Brouwer db10879fd1 Rollup merge of #151096 - rm-providers-deref, r=oli-obk
Remove `Deref`/`DerefMut` impl for `Providers`.

It's described as a "backwards compatibility hack to keep the diff small". Removing it requires only a modest amount of churn, and the resulting code is clearer without the invisible derefs.

r? @oli-obk
2026-01-14 11:05:42 +01:00
bors 2fd6efc327 Auto merge of #150541 - Kobzol:dist-gcc-component, r=jieyouxu
Add a dist component for libgccjit

Companion to https://github.com/rust-lang/rust/pull/150538.

try-job: dist-x86_64-linux
2026-01-14 09:57:06 +00:00
Nicholas Nethercote 3aa31788b5 Remove Deref/DerefMut impl for Providers.
It's described as a "backwards compatibility hack to keep the diff
small". Removing it requires only a modest amount of churn, and the
resulting code is clearer without the invisible derefs.
2026-01-14 15:55:59 +11:00
Guillaume Gomez c8c7b5b449 Generate macro expansion for rust compiler crates docs 2026-01-14 00:58:35 +01:00
Guillaume Gomez 770919211f Rollup merge of #151043 - patch-1, r=ehuss
armv7-unknown-linux-uclibceabihf.md: Fix bootstrap.toml syntax

With the suggested value we were getting instead:

```
ERROR: Failed to parse '/tmp/rust/bootstrap.toml': unknown field `stage`, expected one of `build`, `description`, `host`, `target`, `build-dir`, `cargo`, `rustc`, `rustfmt`, `cargo-clippy`, `docs`, `compiler-docs`, `library-docs-private-items`, `docs-minification`, `submodules`, `gdb`, `lldb`, `nodejs`, `npm`, `yarn`, `python`, `windows-rc`, `reuse`, `locked-deps`, `vendor`, `full-bootstrap`, `bootstrap-cache-path`, `extended`, `tools`, `tool`, `verbose`, `sanitizers`, `profiler`, `cargo-native-static`, `low-priority`, `configure-args`, `local-rebuild`, `print-step-timings`, `print-step-rusage`, `check-stage`, `doc-stage`, `build-stage`, `test-stage`, `install-stage`, `dist-stage`, `bench-stage`, `patch-binaries-for-nix`, `metrics`, `android-ndk`, `optimized-compiler-builtins`, `jobs`, `compiletest-diff-tool`, `compiletest-allow-stage0`, `compiletest-use-stage0-libtest`, `tidy-extra-checks`, `ccache`, `exclude` for key `build`
```
2026-01-13 23:39:12 +01:00
Guillaume Gomez 080c7043c1 Rollup merge of #150840 - print-check-cfg-rework-output, r=nnethercote
Make `--print=check-cfg` output compatible `--check-cfg` arguments

This PR changes significantly the output of the unstable `--print=check-cfg` option.

Specifically it removes the ad-hoc resemblance with `--print=cfg` in order to output a simplified but still compatible `--check-cfg` arguments.

The goal is to future proof the output of `--print=check-cfg` like `--check-cfg` is, and the best way to do that is to use it's syntax.

This is particularly relevant for [RFC3905](https://github.com/rust-lang/rfcs/pull/3905) which wants to introduce a new predicate: `version(...)`.
2026-01-13 23:39:09 +01:00
Guillaume Gomez 66f25e9d8d Rollup merge of #150771 - remove-homu-branches, r=marcoieni
Remove legacy homu `try` and `auto` branch mentions

~~To be merged once we get rid of homu.~~ I think that we can merge this now.
2026-01-13 23:39:09 +01:00
rami3l 596ea17eae fix(build-manifest): enable docs target fallback for rustc-docs 2026-01-13 21:14:26 +01:00
bors db1484bdee Auto merge of #151051 - JonathanBrouwer:rollup-SuaGLmP, r=JonathanBrouwer
Rollup of 14 pull requests

Successful merges:

 - rust-lang/rust#150151 (Destabilise `target-spec-json`)
 - rust-lang/rust#150826 (Add `f16` inline ASM support for s390x)
 - rust-lang/rust#150883 (Improve span for "unresolved intra doc link" on `deprecated` attribute)
 - rust-lang/rust#150934 (Move some checks from `check_doc_attrs` directly into `rustc_attr_parsing`)
 - rust-lang/rust#150943 (Port `#[must_not_suspend]` to attribute parser)
 - rust-lang/rust#150990 (std: sys: net: uefi: Make TcpStream Send)
 - rust-lang/rust#150995 (core: ptr: split_at_mut: fix typo in safety doc)
 - rust-lang/rust#150998 (Relax test expectation for @__llvm_profile_runtime_user)
 - rust-lang/rust#151002 (Remove a workaround for a bug (take 2))
 - rust-lang/rust#151005 (Fix typo in `MaybeUninit` docs)
 - rust-lang/rust#151011 (Update books)
 - rust-lang/rust#151029 (rustc-dev-guide subtree update)
 - rust-lang/rust#151032 (fix: added missing backtick in triagebot.toml)
 - rust-lang/rust#151035 (Don't suggest replacing closure parameter with type name)

r? @ghost
2026-01-13 10:47:20 +00:00
Jonathan Brouwer 0a200ad04f Rollup merge of #151029 - rdg-sync, r=tshepang
rustc-dev-guide subtree update

Subtree update of `rustc-dev-guide` to https://github.com/rust-lang/rustc-dev-guide/commit/e905666c5a24f37e73011fc6f282a8afab9a41c1.

Created using https://github.com/rust-lang/josh-sync.

r? @ghost
2026-01-13 09:01:35 +01:00
Jonathan Brouwer ced35f87da Rollup merge of #151011 - docs-update, r=ehuss
Update books

## rust-lang/nomicon

2 commits in 5b3a9d084cbc64e54da87e3eec7c7faae0e48ba9..050c002a360fa45b701ea34feed7a860dc8a41bf
2026-01-10 15:05:01 UTC to 2026-01-09 23:34:23 UTC

- Correct false typo fix in safe-unsafe-meaning.md (rust-lang/nomicon#518)
- Fix grammar and typos in safe-unsafe-meaning.md (rust-lang/nomicon#517)

## rust-lang/reference

2 commits in 6363385ac4ebe1763f1e6fb2063c0b1db681a072..28b5a54419985f03db5294de5eede71b6665b594
2026-01-03 19:09:24 UTC to 2026-01-03 18:10:24 UTC

- RISC-V Extensions update including 29 extensions to stabilize (rust-lang/reference#1987)
- Update note about shebang removal in `include`d files (rust-lang/reference#2127)

## rust-lang/rust-by-example

1 commits in 2e02f22a10e7eeb758e6aba484f13d0f1988a3e5..8de6ff811315ac3a96ebe01d74057382e42ffdee
2026-01-06 00:16:33 UTC to 2026-01-06 00:16:33 UTC

- Update comments on iterator behavior in closure examples (rust-lang/rust-by-example#1983)
2026-01-13 09:01:34 +01:00
Jonathan Brouwer dc6afd74dd Rollup merge of #150883 - improve-deprecated-intra-doc-span, r=camelid
Improve span for "unresolved intra doc link" on `deprecated` attribute

Follow-up of rust-lang/rust#150721.

To make this work, I replaced the `Symbol` by an `Ident` to keep the `Span` information.

cc @folkertdev
r? @camelid
2026-01-13 09:01:30 +01:00