Commit graph

166040 commits

Author SHA1 Message Date
Matthias Krüger
0a14ae0fad
Rollup merge of #146501 - Enselic:x-test-filter, r=Mark-Simulacrum
compiletest: Fix `--exact` test filtering

This fix only changes the behavior when using `--exact` test filtering, which
was quite broken. Before this fix, the following runs 0 tests:

    $ ./x test tests/run-make/crate-loading -- --exact
    running 0 tests
    test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 431 filtered out; finished in 24.95µs

With the fix the desired test is run:

    $ ./x test tests/run-make/crate-loading -- --exact
    running 1 tests
    test [run-make] tests/run-make/crate-loading ... ok

Without `--exact` the set of run tests is unchanged. This still runs "too many" (cc rust-lang/rust#134341) tests

    $ ./x test tests/run-make/crate-loading
    running 3 tests
    test [run-make] tests/run-make/crate-loading-crate-depends-on-itself ... ok
    test [run-make] tests/run-make/crate-loading-multiple-candidates ... ok
    test [run-make] tests/run-make/crate-loading ... ok

This still runs the one and only right test

    $ ./x test tests/ui/lint/unused/unused-allocation.rs
    running 1 tests
    test [ui] tests/ui/lint/unused/unused-allocation.rs ... ok

### Notes

- I have not verified this on Windows which treats paths differently (but I see no reason why it should not work since my code should be platform agnostic).
2025-09-15 06:03:48 +02:00
Matthias Krüger
d316cfdbf9
Rollup merge of #146471 - neuschaefer:no-target, r=Mark-Simulacrum
bootstrap: Show target in "No such target exists" message

This makes it a little easier to pinpoint the issue.
2025-09-15 06:03:46 +02:00
Matthias Krüger
b59f0a27da
Rollup merge of #146416 - clubby789:tidy-deps-qol, r=jieyouxu
Tidy dependency checks cleanups + QoL

- Refactors the list of workspaces into a documented struct
- Provide accurate line info in 'Go to ..... for the list' message
- Print crate name on dependency issue (i.e. `dependency for rustc-main` instead of `dependency for .`
2025-09-15 06:03:45 +02:00
clubby789
37d058fa04 tidy: Remove WorkspaceInfo constructor 2025-09-14 23:03:56 +01:00
bors
60a5372753 Auto merge of #146507 - Mark-Simulacrum:add-version, r=Mark-Simulacrum
Bump version to 1.92.0

https://forge.rust-lang.org/release/process.html#bump-the-stable-version-number-friday-the-week-before
2025-09-14 02:20:54 +00:00
Jacob Pratt
392d2fad16
Rollup merge of #146506 - mikysett:patch-1, r=Urgau
Fix small typo in check-cfg.md
2025-09-13 18:55:18 -04:00
Jacob Pratt
04f17d85ed
Rollup merge of #146419 - thejpster:update-arm-target-docs, r=workingjubilee
Update the arm-* and aarch64-* platform docs.

This PR updates some of the arm*-unknown-none target docs, and adds some missing target pages.

## aarch64-none-elf and aarch64-none-elf-softfloat

The Rust Embedded Devices Working Group's Arm Team is added as a maintainer, and a target page is added. Links are added to the EDWG's support crates for this target.

## armv7a-none-eabi and armv7a-none-eabihf

The Rust Embedded Devices Working Group's Arm Team is added as a maintainer, and a target page is added. Links are added to the EDWG's support crates for this target.

## armv7r-none-eabi and armv7r-none-eabihf

The Rust Embedded Devices Working Group's Arm Team is added as a maintainer, and the target page is split from the Big Endian versions. Links are added to the EDWG's support crates for this target.

## armebv7r-none-eabi and armveb7r-none-eabihf

The target page is split from the Little Endian versions. No change in maintainers.

I have agreement to add EDWG/T-Arm as maintainers, which was voted upon in [their repo](https://github.com/rust-embedded/wg/issues/851).
2025-09-13 18:55:17 -04:00
Jacob Pratt
141cb38f15
Rollup merge of #146171 - scrabsha:push-wovnxxwltsun, r=WaffleLapkin
tidy: check that error messages don't start with a capitalized letter
2025-09-13 18:55:17 -04:00
Jonathan 'theJPster' Pallant
afd324aa2c
Note that these targets are bare-metal.
This is important to note, as it affects how easy it is to build a
binary, and that `#![no_std]` is mandatory.

A different PR should probably add this to all the other platform pages.
2025-09-13 19:25:44 +01:00
Mark Rousskov
fd85120499 Bump version to 1.92.0 2025-09-13 10:09:15 -04:00
bors
637b50be01 Auto merge of #145186 - camsteffen:assoc-impl-kind, r=petrochenkov
Make `AssocItem` aware of its impl kind

The general goal is to have fewer query dependencies by making `AssocItem` aware of its parent impl kind (inherent vs. trait) without having to query the parent def_kind.

See individual commits.
2025-09-13 13:59:48 +00:00
Michele Sessa
d3b3bb9bb2
Fix small typo in check-cfg.md 2025-09-13 15:03:29 +02:00
bors
b50f345a2f Auto merge of #146499 - jhpratt:rollup-ufflehe, r=jhpratt
Rollup of 5 pull requests

Successful merges:

 - rust-lang/rust#144498 (Add --print target-spec-json-schema)
 - rust-lang/rust#145471 (Stabilize BTree{Map,Set}::extract_if)
 - rust-lang/rust#145896 (Rehome 30 `tests/ui/issues/` tests to other subdirectories under `tests/ui/` [rust-lang/rust#3 of Batch rust-lang/rust#2])
 - rust-lang/rust#146450 (bootstrap: rustdoc-js tests can now be filtered by js files)
 - rust-lang/rust#146456 (Fix panic and incorrectly suggested examples in `format_args` macro.)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-09-13 10:43:09 +00:00
Martin Nordholts
a48c8e337d compiletest: Fix --exact test filtering
This fix only changes the behavior when using `--exact` test filtering,
which was quite broken. Before this fix, the following runs 0 tests:

    $ ./x test tests/run-make/crate-loading -- --exact
    running 0 tests
    test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 431 filtered out; finished in 24.95µs

With the fix the desired test is run:

    $ ./x test tests/run-make/crate-loading -- --exact
    running 1 tests
    test [run-make] tests/run-make/crate-loading ... ok

Without `--exact` the set of run tests is unchanged. This still runs
"too many" tests

    $ ./x test tests/run-make/crate-loading
    running 3 tests
    test [run-make] tests/run-make/crate-loading-crate-depends-on-itself ... ok
    test [run-make] tests/run-make/crate-loading-multiple-candidates ... ok
    test [run-make] tests/run-make/crate-loading ... ok

This still runs the one and only right test:

    $ ./x test tests/ui/lint/unused/unused-allocation.rs
    running 1 tests
    test [ui] tests/ui/lint/unused/unused-allocation.rs ... ok
2025-09-13 12:06:55 +02:00
Jacob Pratt
7be418947e
Rollup merge of #146450 - lolbinarycat:bootstrap-test-js, r=jieyouxu
bootstrap: rustdoc-js tests can now be filtered by js files

Before, a command like `./x test tests/rustdoc-js/path-ordering.js` would succeed, but run no tests, since the names of the tests are based on the `.rs` file.  This is a bit confusing, as the `rustdoc-js-std` test suite only has `.js` files, and thus those are the files you filter on.  Now, `./x test tests/rustdoc-js/path-ordering.js` will be treated as an alias for `./x test tests/rustdoc-js/path-ordering.rs`.  This is fairly simple as each `rustdoc-js` test has 2 files, 1 js file and one rust file, each with an identical base filename, so all we need to do is swap the extension.

r? `@Kobzol`
2025-09-13 03:26:03 -04:00
Jacob Pratt
5b37a1e4ae
Rollup merge of #145471 - rs-sac:extr, r=the8472
Stabilize BTree{Map,Set}::extract_if

Tracking issue: rust-lang/rust#70530
FCP completed: https://github.com/rust-lang/rust/issues/70530#issuecomment-3191454465
Closes: rust-lang/rust#70530
2025-09-13 03:26:02 -04:00
Jacob Pratt
544644476d
Rollup merge of #144498 - Noratrieb:rustc-json-schema, r=jieyouxu,davidtwco
Add --print target-spec-json-schema

This schema is helpful for people writing custom target spec JSON. It can provide autocomplete in the editor, and also serves as documentation when there are documentation comments on the structs, as `schemars` will put them in the schema.

I was motivated to do this because I saw someone write their own version of this schema by hand, so demand for this clearly exists. It's not a lot of effort to implement, so I thought it would make sense.

MCP: https://github.com/rust-lang/compiler-team/issues/905

I think it would also be useful to put this in the sysroot in `etc` so people can link it directly in their editors.

I would have loved to add a test that validates the JSON schema against the spec JSON of every builtin target, but I don't want to do it as the JSON schema validation crates have incredible amounts of dependencies because JSON schema supports a ton of random features. I don't want to add that, even as a dev dependency.
2025-09-13 03:26:01 -04:00
bors
064cc81354 Auto merge of #146394 - Enselic:debuginfo-level-tests-2, r=jieyouxu
ci: Increase `rust.debuginfo-level-tests` to `2` in `x86_64-gnu-debug` job

Simply to increase the scope of the testing.

Part of https://github.com/rust-lang/rust/issues/61117.

cc rust-lang/rust#145967 and rust-lang/rust#146025 which prepared for this. And rust-lang/rust#144499 that set to level to `1`

try-job: x86_64-gnu-debug
2025-09-13 07:24:30 +00:00
Jana Dönszelmann
147e97ae68
Rollup merge of #146389 - jdonszelmann:no-std, r=oli-obk
Convert `no_std` and `no_core` to the new attribute infrastructure

r? ```@oli-obk```

Also added a test for these, since we didn't have any and I was kind of surprised new diagnostics didn't break anything hehe
2025-09-13 02:40:44 +02:00
bors
4ba1cf9ade Auto merge of #146444 - heiher:fix-loong-jemalloc-page-size, r=Mark-Simulacrum
bootstrap: Build jemalloc for LoongArch with support for 16K pages

By default, jemalloc is configured with a 4K page size. If the host’s page size is larger than this, it will crash at runtime. This patch raises the page size to 16K.
2025-09-12 20:41:17 +00:00
Cameron Steffen
b995a55caf Don't store defaultness for inherent impl items 2025-09-12 15:14:15 -05:00
Cameron Steffen
9615ec7d10 Split AssocContainer::{InherentImpl,TraitImpl} 2025-09-12 15:14:15 -05:00
Cameron Steffen
88a8bfcaf0 Introduce hir::ImplItemImplKind 2025-09-12 15:14:15 -05:00
Cameron Steffen
5590e55b03 Rename AssocItemContainer -> AssocContainer 2025-09-12 15:10:30 -05:00
Cameron Steffen
16c218c57f Introduce trait_item_of 2025-09-12 15:10:30 -05:00
Jonathan 'theJPster' Pallant
ea661e9353
Re-order and re-work the aarch64-unknown-none platform support page.
Removes a bunch of information that isn't, strictly speaking, target specific.
2025-09-12 20:38:00 +01:00
Jonathan 'theJPster' Pallant
4383a4f73b
Remove bullet points from the target maintainer list for the arm bare-metal targets 2025-09-12 20:26:41 +01:00
Noratrieb
f157ce994e Add --print target-spec-json-schema
This schema is helpful for people writing custom target spec JSON. It
can provide autocomplete in the editor, and also serves as documentation
when there are documentation comments on the structs, as `schemars` will
put them in the schema.
2025-09-12 20:53:28 +02:00
J. Neuschäfer
fefc979374 bootstrap: Show target in "No such target exists" message
This makes it a little easier to pinpoint the issue.
2025-09-12 13:32:07 +02:00
Stuart Cook
accb4a3a8f
Rollup merge of #146449 - Kobzol:gcc-fix-symlink, r=GuillaumeGomez
Fix `libgccjit` symlink when we build GCC locally

Unblocks https://github.com/rust-lang/rust/pull/146414.

r? ```@GuillaumeGomez```
2025-09-12 20:02:18 +10:00
Stuart Cook
249730f521
Rollup merge of #146448 - GuillaumeGomez:fix-literal-search-paths, r=lolbinarycat
[rustdoc] Correctly handle literal search on paths

Fixes https://github.com/rust-lang/rust/issues/146129.

cc ```@notriddle```
r? ```@lolbinarycat```
2025-09-12 20:02:17 +10:00
Stuart Cook
7e3aa41316
Rollup merge of #146435 - Kobzol:gcc-download-default-true, r=GuillaumeGomez
Change the default value of `gcc.download-ci-gcc` to `true`

It makes sense for the vast majority of uses (https://github.com/rust-lang/rustc-dev-guide/pull/2587#discussion_r2337374719).

r? ```@GuillaumeGomez```
2025-09-12 20:02:16 +10:00
Stuart Cook
322f5dc4f4
Rollup merge of #146413 - GuillaumeGomez:rustdoc-bare-urls, r=lolbinarycat
Improve suggestion in case a bare URL is surrounded by brackets

Fixes https://github.com/rust-lang/rust/issues/146162.

With this change, output looks like this:

```
  |
1 | //! [https://github.com]
  |     ^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://github.com>`
  |
  = note: bare URLs are not automatically turned into clickable links
  = note: `#[warn(rustdoc::bare_urls)]` on by default
```

cc ```@fmease```
r? ```@lolbinarycat```
2025-09-12 20:02:14 +10:00
Stuart Cook
27954ecbae
Rollup merge of #146332 - lolbinarycat:tidy-extra-checks-regularize, r=Kobzol
tidy: make behavior of extra-checks more uniform
2025-09-12 20:02:12 +10:00
Stuart Cook
1037c082bc
Rollup merge of #145895 - RalfJung:unpark, r=joboet
thread parking: fix docs and examples

Fixes https://github.com/rust-lang/rust/issues/145816

r? ```@joboet```
Cc ```@m-ou-se``` ```@Amanieu```
2025-09-12 20:02:10 +10:00
Martin Nordholts
c7c2fdd804 ci: Increase rust.debuginfo-level-tests to 2 in x86_64-gnu-debug job
Simply to increase the scope of the testing.

Force debuginfo=0 for a handful of tests so that we can have CI prevent
regressing on more tests.
2025-09-12 05:40:41 +02:00
bors
2a9bacf618 Auto merge of #145177 - joboet:move-pal-thread, r=ibraheemdev
std: move `thread` into `sys`

Part of https://github.com/rust-lang/rust/issues/117276.
2025-09-11 22:31:43 +00:00
Jonathan 'theJPster' Pallant
a0d1f5a3fb
Insert missing word. 2025-09-11 22:05:24 +01:00
Jonathan 'theJPster' Pallant
1621ce6a08
Cleanups from review comments. 2025-09-11 22:04:35 +01:00
bors
5eda692e73 Auto merge of #146386 - weihanglo:update-cargo, r=weihanglo
Update cargo submodule

13 commits in 761c4658d0079d607e6d33cf0c060e61a617cad3..24bb93c388fb8c211a37986539f24a819dc669d3
2025-09-04 01:25:01 +0000 to 2025-09-10 23:16:07 +0000
- Bump miow to 0.60.1 (rust-lang/cargo#15950)
- test(help): Ensure consistent behavior regardless of rustup use (rust-lang/cargo#15949)
- docs(changelog): Clarify how manifest paths are used (rust-lang/cargo#15946)
- fix(flock): check if they are marked unsupported in libstd (rust-lang/cargo#15941)
- test(manifest): Fix test output order (rust-lang/cargo#15940)
- refactor(shell): Simplify some code (rust-lang/cargo#15937)
- fix(manifest): Report script manifest errors for the right line number (rust-lang/cargo#15927)
- refactor: replace flock with std flock (rust-lang/cargo#15935)
- fix(cli): Adjust messages to match rustc  (rust-lang/cargo#15928)
- fix: Switch from --nocapture to --no-capture (rust-lang/cargo#15930)
- Render individual compilation sections in `--timings` pipeline graph (rust-lang/cargo#15923)
- test(credential): Switch more expected results to snapshots (rust-lang/cargo#15929)
- refactor(cli): Pull out error chain iteration (rust-lang/cargo#15926)
2025-09-11 19:25:03 +00:00
binarycat
472721b34f bootstrap: rustdoc-js tests can now be filtered by js files 2025-09-11 12:47:22 -05:00
Jakub Beránek
256aa0d941
Fix libgccjit symlink when we build GCC locally 2025-09-11 18:46:14 +02:00
Guillaume Gomez
bfd5a264c7 Correctly handle literal search on paths 2025-09-11 18:05:07 +02:00
WANG Rui
35979519ae bootstrap: Build jemalloc for LoongArch with support for 16K pages
By default, jemalloc is configured with a 4K page size. If the
host’s page size is larger than this, it will crash at runtime.
This patch raises the page size to 16K.
2025-09-11 21:55:05 +08:00
Weihang Lo
c3bd8b6f38
Update cargo submodule 2025-09-11 08:57:19 -04:00
Jakub Beránek
8d1403cb9b
Change the default value of gcc.download-ci-gcc to true 2025-09-11 11:45:09 +02:00
bors
76c5ed2847 Auto merge of #146429 - Zalathar:rollup-eivhl6u, r=Zalathar
Rollup of 11 pull requests

Successful merges:

 - rust-lang/rust#142315 (core::ptr: deduplicate docs for as_ref, addr, and as_uninit_ref)
 - rust-lang/rust#146335 (disable core dumps for panic-uninitialized-zeroed)
 - rust-lang/rust#146347 (report duplicate symbols added by the driver)
 - rust-lang/rust#146370 (Update the LoongArch target documentation)
 - rust-lang/rust#146379 (Fix `compare_against_sw_vers` test)
 - rust-lang/rust#146380 (Unify and deduplicate bits conv float tests)
 - rust-lang/rust#146415 (s390x: mark soft-float target feature as incompatible)
 - rust-lang/rust#146422 (Less greedily parse `[const]` bounds)
 - rust-lang/rust#146424 (Improve `core::ops` coverage)
 - rust-lang/rust#146425 (Improve `core::array` coverage)
 - rust-lang/rust#146428 (Revert `assert!` desugaring changes (rust-lang/rust#122661))

r? `@ghost`
`@rustbot` modify labels: rollup
2025-09-11 09:04:28 +00:00
bors
5e33838cca Auto merge of #146400 - nikic:llvm-21.1.1, r=dianqk
Update to LLVM 21.1.1

Fixes https://github.com/rust-lang/rust/issues/145988.
Fixes https://github.com/rust-lang/rust/issues/146163.
2025-09-11 05:58:14 +00:00
Stuart Cook
613a3b6a42
Rollup merge of #146428 - jieyouxu:revert-assert-desugaring, r=estebank,jackh726
Revert `assert!` desugaring changes (#122661)

Reverts rust-lang/rust#122661 to prevent rust-lang/rust#145770 slipping into beta.

cc `@estebank` (FYI)

### Review remarks

- Commit 1 is the MCVE reported in rust-lang/rust#145770 added as a regression test `tests/ui/macros/assert-desugaring-145770.rs`. Against `master`, this test fails.
- Commit 2 reverts rust-lang/rust#122661 (with a merge conflict fixed). `tests/ui/macros/assert-desugaring-145770.rs` now passes.
2025-09-11 14:06:33 +10:00
Stuart Cook
88b51304f9
Rollup merge of #146370 - heiher:update-loong-linux-docs, r=jieyouxu
Update the LoongArch target documentation

This patch defines minimum CPU feature requirements, updates toolchain baseline, and streamlines maintainer list:

- Specify double-precision floating-point and LSX as mandatory CPU features
- Raise the minimum required binutils version to 2.42+, due to relocations introduced by the default medium code model
- Remove outdated maintainers to reduce irrelevant notifications

r? `@jieyouxu`
2025-09-11 14:06:29 +10:00