305460 Commits

Author SHA1 Message Date
Stuart Cook
f0e8c2fb6f
Rollup merge of #146609 - lolbinarycat:bootstrap-less-verbose-cargo, r=Kobzol
bootstrap: lower verbosity of cargo to one less than bootstrap's

the main thing this does is eliminate the "Fresh ..." output when `--verbose` is only passed once.

r? `@Kobzol`
2025-09-16 10:25:44 +10:00
Stuart Cook
cc315a8fba
Rollup merge of #146608 - lolbinarycat:bootstrap-readme, r=Kobzol
improve internal bootstrap docs

Mainly focused on making it easier to figure out how tools get built without having to read the `bootstrap_tool!` macro, but also added some subdirs of `build/` to the readme.
2025-09-16 10:25:43 +10:00
Stuart Cook
7cad097408
Rollup merge of #146601 - Enselic:fix-test-args, r=Mark-Simulacrum
compiletest: Make `./x test --test-args ...` work again

It accidentally broke with  https://github.com/rust-lang/rust/pull/146501. The intention of that PR was to keep existing behavior if `--exact` is not used, but it had a bug. This PR fixes that bug.
2025-09-16 10:25:42 +10:00
Stuart Cook
f3c395b118
Rollup merge of #146599 - npmccallum:cleanup, r=fmease
replace some `#[const_trait]` with `const trait`
2025-09-16 10:25:42 +10:00
Stuart Cook
336e45e041
Rollup merge of #146574 - Zalathar:capture, r=jieyouxu
compiletest: Enable new-output-capture by default

The new output-capture implementation was added in rust-lang/rust#146119, but was disabled by default and required opt-in.

Since then, I haven't encountered any problems in my own testing/usage, and I haven't heard any problem reports from other contributors who might have opted in.

It's unlikely that more opt-in testing will help, so the next step is to enable new-output-capture by default and see if anyone complains. (Hopefully nobody!)

If needed, the new default can be overridden (for now) by setting environment variable `COMPILETEST_NEW_OUTPUT_CAPTURE=off`. Please file an issue (or let me know) if anyone finds a reason to do this.

r? jieyouxu
2025-09-16 10:25:41 +10:00
Stuart Cook
9eaf3c8864
Rollup merge of #146466 - klensy:llvm-wrapper-c, r=cuviper
llvm-wrapper: other cleanup

Cleanup few things around llvm-wrapper:

First commit removes unused macro, added back in https://github.com/rust-lang/rust/pull/31709 it was used in `LLVMRustHasFeature`; second removes unused function, third one removes `jsbackend` llvm component - this is looks like remnants of some removed backend?
2025-09-16 10:25:40 +10:00
Stuart Cook
f162d11351
Rollup merge of #146402 - RalfJung:aggregate-init, r=saethlin
interpret: fix overlapping aggregate initialization

This fixes the problem pointed out by ````@saethlin```` in https://github.com/rust-lang/rust/issues/146383#issuecomment-3273224645.

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
2025-09-16 10:25:40 +10:00
Stuart Cook
85249d5571
Rollup merge of #145960 - scrabsha:push-kskuprrtmnky, r=jdonszelmann
Split `FnCtxt::report_args_error` into subfunctions
2025-09-16 10:25:39 +10:00
Stuart Cook
edd6721583
Rollup merge of #145095 - tiif:unstable_const_param, r=BoxyUwU
Migrate `UnsizedConstParamTy`  to unstable impl of `ConstParamTy_`

Now that we have ``#[unstable_feature_bound]``, we can remove ``UnsizedConstParamTy`` that was meant to be an unstable impl of stable type and ``ConstParamTy_`` trait.

r? `@BoxyUwU`
2025-09-16 10:25:38 +10:00
bors
a454fccb02 Auto merge of #146405 - BoxyUwU:relnotes_1_90, r=Mark-Simulacrum
Add relnotes for 1.90.0

r? `@Mark-Simulacrum`
cc `@rust-lang/release`
`@rustbot` ping relnotes-interest-group
2025-09-15 20:06:13 +00:00
binarycat
29ca09be09 bootstrap: lower verbosity of cargo to one less than bootstrap's
the main thing this does is eliminate the "Fresh ..." output when
`--verbose` is only passed once.
2025-09-15 14:42:44 -05:00
binarycat
b8cb80cf80 improve internal bootstrap docs 2025-09-15 13:38:04 -05:00
Martin Nordholts
bf73aac8cb compiletest: Make ./x test --test-args ... work again
It accidentally broke with a48c8e337d1. The intention of that commit was
to keep existing behavior if `--exact` is not used, but it had a bug.
This commit fixes that bug.
2025-09-15 18:37:47 +02:00
Nathaniel McCallum
2d76bb1f23 replace some #[const_trait] with const trait 2025-09-15 11:33:40 -04:00
Sasha Pourcelot
9cbf1a5502 Split FnCtxt::report_args_error into subfunctions 2025-09-15 17:27:11 +02:00
tiif
7299e8fc4d Fix feature gate tests 2025-09-15 14:15:29 +00:00
Boxy Uwu
c92dee244d Add relnotes 1.90 2025-09-15 08:34:06 -04:00
bors
f3fd3efe4f Auto merge of #146582 - Kobzol:cranelift-test-nightly, r=jieyouxu
Only run Cranelift dist test on nightly

Fixes the test failure in https://github.com/rust-lang/rust/pull/146545.

r? `@jieyouxu`
2025-09-15 12:31:03 +00:00
Jakub Beránek
dcc62e7e58
Only run Cranelift dist test on nightly 2025-09-15 12:32:03 +02:00
tiif
1c30399cea Add documentation for select_where_possible and select_all_or_error 2025-09-15 09:02:12 +00:00
tiif
0bd2ee3a0c Fix the testcases to not use UnsizedConstParamTy 2025-09-15 09:01:22 +00:00
tiif
1a02cd531d Add check to make sure ConstParamTy impls of certain types are gated with #[unstable_feature_bound(unsized_const_params)] 2025-09-15 08:59:19 +00:00
tiif
b919a5f518 Remove UnsizedConstParamTy trait and make it into an unstable impl 2025-09-15 08:57:22 +00:00
Zalathar
96f8dbe1b3 compiletest: Enable new-output-capture by default 2025-09-15 16:36:00 +10:00
bors
d1ed52b1f5 Auto merge of #146572 - matthiaskrgr:rollup-gotklb6, r=matthiaskrgr
Rollup of 8 pull requests

Successful merges:

 - rust-lang/rust#143314 (add reference id to test, and fix filename)
 - rust-lang/rust#146284 (Remove `div_rem` from `core::num::bignum`)
 - rust-lang/rust#146416 (Tidy dependency checks cleanups + QoL)
 - rust-lang/rust#146471 (bootstrap: Show target in "No such target exists" message)
 - rust-lang/rust#146478 (Improve `core::fmt` coverage)
 - rust-lang/rust#146480 (tests: update new test to accept new lifetime format)
 - rust-lang/rust#146488 (Improve `core::ptr` coverage)
 - rust-lang/rust#146501 (compiletest: Fix `--exact` test filtering)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-09-15 04:16:42 +00:00
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
32c045ecd1
Rollup merge of #146488 - ferrocene:pvdrz/improve-ptr-coverage, r=Mark-Simulacrum
Improve `core::ptr` coverage

This PR improves the `core::ptr` coverage by adding a new test to `coretests` for the `<*const T>::is_aligned_to` method.

r? libs
2025-09-15 06:03:48 +02:00
Matthias Krüger
b82698b503
Rollup merge of #146480 - durin42:llvm-22-more-lifetime, r=Mark-Simulacrum
tests: update new test to accept new lifetime format

Same change as rust-lang/rust@258915a555, just for a newly written test.
2025-09-15 06:03:47 +02:00
Matthias Krüger
9070e95dda
Rollup merge of #146478 - ferrocene:pvdrz/improve-fmt-coverage, r=Mark-Simulacrum
Improve `core::fmt` coverage

This PR improves the `core::fmt` coverage by adding new tests to `coretests`
2025-09-15 06:03:46 +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
Matthias Krüger
fa63dbf301
Rollup merge of #146284 - Kivooeo:blazing-fast-division-bignum, r=Mark-Simulacrum
Remove `div_rem` from `core::num::bignum`

This fixes very old fixme that sounds like this

```
Stupid slow base-2 long division taken from
https://en.wikipedia.org/wiki/Division_algorithm
FIXME use a greater base ($ty) for the long division.
```

By deleting this method since it was never used
2025-09-15 06:03:45 +02:00
Matthias Krüger
f96bc5c378
Rollup merge of #143314 - tshepang:fix-filename, r=compiler-errors
add reference id to test, and fix filename

Noticed the filename is wrong, then took advantage of being there by adding Reference id
2025-09-15 06:03:44 +02:00
clubby789
37d058fa04 tidy: Remove WorkspaceInfo constructor 2025-09-14 23:03:56 +01:00
bors
52618eb338 Auto merge of #145881 - fmease:mv-var-to-dyn-buf-lints, r=joshtriplett
Move more early buffered lints to dyn lint diagnostics

Follow-up to rust-lang/rust#145747.

Presently, it's unclear to me if it's possible to migrate all variants to dyn lint diagnostics without regressing performance because for some early lints `decorate_builtin_lint` performs a bit more work (past PR rust-lang/rust#124417 has shown that eagerly decorating early lints is incredibly heavy and we had to revert back to lazily decorating in rust-lang/rust#125410). Let's see how this fares once I tackle the more 'risky' variants.

cc `@joshtriplett` (you can immediately unsubscribe again, I just want to prevent duplicate efforts).
2025-09-14 10:40:39 +00:00
León Orell Valerian Liehr
ec7ad59789
Move more early buffered lints to dyn lint diagnostics (4/N) 2025-09-14 12:38:12 +02:00
León Orell Valerian Liehr
27a180a31a
Move more early buffered lints to dyn lint diagnostics (3/N) 2025-09-14 12:38:12 +02:00
León Orell Valerian Liehr
379b181fe6
Remove a dead early lint
Dropped in favor a hard error in RUST-127907.
2025-09-14 12:38:11 +02:00
León Orell Valerian Liehr
31c0d96cb6
Move more early buffered lints to dyn lint diagnostics (2/N) 2025-09-14 12:38:11 +02:00
León Orell Valerian Liehr
2e816736ef
Move more early buffered lints to dyn lint diagnostics (1/N) 2025-09-14 12:38:11 +02:00
bors
ddaf12390d Auto merge of #146420 - jdonszelmann:crate-level-into-allowed-targets, r=scrabsha
Crate level into allowed targets

r? `@scrabsha`

`@rustbot` blocked on https://github.com/rust-lang/rust/pull/146389
2025-09-14 05:54:32 +00:00
Jana Dönszelmann
f56eb06047
merge crate-level into ALLOWED_TARGETS 2025-09-13 22:37:20 -07: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
bors
a015919e54 Auto merge of #146526 - jhpratt:rollup-afb1dgo, r=jhpratt
Rollup of 8 pull requests

Successful merges:

 - rust-lang/rust#113095 (Document `become` keyword)
 - rust-lang/rust#146159 (Some hygiene doc improvements)
 - rust-lang/rust#146171 (tidy: check that error messages don't start with a capitalized letter)
 - rust-lang/rust#146419 (Update the arm-* and aarch64-* platform docs.)
 - rust-lang/rust#146473 (Revert "Constify SystemTime methods")
 - rust-lang/rust#146506 (Fix small typo in check-cfg.md)
 - rust-lang/rust#146517 (fix Condvar::wait_timeout docs)
 - rust-lang/rust#146521 (document `core::ffi::VaArgSafe`)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-09-13 23:02:12 +00:00
Jacob Pratt
da1c27df16
Rollup merge of #146521 - folkertdev:document-va-arg-safe, r=workingjubilee
document `core::ffi::VaArgSafe`

tracking issue: https://github.com/rust-lang/rust/issues/44930

A modification of https://github.com/rust-lang/rust/pull/146454, keeping just the documentation changes, but not unsealing the trait.

Although conceptually we'd want to unseal the trait, there are many edge cases to supporting arbitrary types. We'd need to exhaustively test that all targets/calling conventions support all types that rust might generate (or generate proper error messages for unsupported cases). At present, many of the `va_arg` implementations assume that the argument is a scalar, and has an alignment of at most 8. That is totally  sufficient for an MVP (accepting all of the "standard" C types), but clearly does not cover all rust types.

This PR also adds some various other tests for edge cases of c-variadic:

- the `#[inline]` attribute in its various forms. At present, LLVM is unable to inline c-variadic functions, but the attribute should still be accepted. `#[rustc_force_inline]` already rejects c-variadic functions.
- naked functions should accept and work with a C variable argument list. In the future we'd like to allow more ABIs with naked functions (basically, any ABI for which we accept defining foreign c-variadic functions), but for now only  `"C"` and `"C-unwind` are supported
- guaranteed tail calls: c-variadic functions cannot be tail-called. That was already rejected, but there was not test for it.

r? `@workingjubilee`
2025-09-13 18:55:20 -04:00
Jacob Pratt
08db93806b
Rollup merge of #146517 - RalfJung:wait-timeout, r=joboet
fix Condvar::wait_timeout docs

[Context](https://rust-lang.zulipchat.com/#narrow/channel/219381-t-libs/topic/Condvar.20wait_timeout.20sleep.20duration.20decremented/with/539279839)
r? `@joboet`
2025-09-13 18:55:19 -04: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
5d56e52409
Rollup merge of #146473 - RalfJung:system-time-deconst, r=workingjubilee
Revert "Constify SystemTime methods"

This reverts https://github.com/rust-lang/rust/pull/144519. The const-hacks introduces bugs, and they make the code harder to maintain. Let's wait until we can constify these functions without changing their implementation.

Fixes https://github.com/rust-lang/rust/issues/146228.
Closes https://github.com/rust-lang/rust/issues/144517 (since the feature is gone).
r? `@tgross35`
Cc `@clarfonthey`
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