Commit graph

298901 commits

Author SHA1 Message Date
Jieyou Xu
8788b6a4ad
test-float-parse: apply cfg(not(bootstrap))
Prior to stage 0 redesign, `test-float-parse` ran against in-tree std
but now it runs against beta std. `f16::FromStr` were only present in
in-tree std and not yet beta std, so apply `cfg(not(bootstrap))` gating
to unbrick `./x check --stage=0`.
2025-06-02 20:45:14 +08:00
llogiq
6fa2866a96
Use None::<u64> instead of 0 to denote an absence of value (#14957)
`clippy_lints::casts::utils::int_ty_to_nbits` used to return `0` to
indicate that the argument was not an integral type. It is more
idiomatic to use `Option<u64>` as a return type.

Also, I've added a few `FIXME:` at places where only `f32` and `f64` are
considered, as we now have `f16` and `f128` to deal with.

changelog: none
2025-06-02 12:41:09 +00:00
Vadim Petrochenkov
65730a3c4b bootstrap: Remove rustc_snapshot_libdir from PATH in one more place 2025-06-02 15:35:57 +03:00
Ell
a6a1c1b247 Separately check equality of the scalar types and compound types in the order of declaration. 2025-06-02 15:29:34 +03:00
Jana Dönszelmann
8b5b6d053a
add fixme to improve error matching 2025-06-02 14:22:14 +02:00
Jakub Beránek
0505ee514b
Use ccache for stage0 tool and rustc builds 2025-06-02 14:10:17 +02:00
llogiq
d7b27ecbf3
add lint infallible_try_from (#14813)
Looks for `TryFrom` implementations with uninhabited error types and
suggests to implement `From` instead.

Fixes rust-lang/rust-clippy#2144

---

changelog: Add [`infallible_try_from`] lint
2025-06-02 11:52:57 +00:00
Luca Palmieri
6be3c3ceb7
[rustdoc-json] Implement PartialOrd and Ord for rustdoc_types::Id 2025-06-02 13:43:51 +02:00
Jakub Beránek
28cf702292
Fix citool tests when executed ocally
They couldn't be executed locally before due to some additional environment reads.
2025-06-02 13:34:29 +02:00
Samuel Tardieu
225abd6c0a
Use None::<u64> instead of 0 to denote an absence of value
`clippy_lints::casts::utils::int_ty_to_nbits` used to return `0` to
indicate that the argument was not an integral type. It is more
idiomatic to use `Option<u64>` as a return type.
2025-06-02 13:32:30 +02:00
Lukas Wirth
1099b63858
Merge pull request #19904 from Wilfred/project_json_naming
internal: Use 'ProjectJson' consistently
2025-06-02 11:13:14 +00:00
nora
d6cc62c8c5
Merge pull request #2440 from rust-lang/tshepang-patch-1
distracting indirection
2025-06-02 12:55:31 +02:00
Tshepang Mbambo
9aa572d598 use consistent title capitalization 2025-06-02 12:35:52 +02:00
Tshepang Mbambo
23285efeab
distracting indirection 2025-06-02 12:34:19 +02:00
Tshepang Mbambo
d243d370fb
Merge pull request #2439 from rust-lang/tshepang-offline-love
use a relative path, so that this also works offline
2025-06-02 12:31:25 +02:00
Tshepang Mbambo
a62b7c8300 use a relative path, so that this also works offline 2025-06-02 12:30:08 +02:00
Wilfred Hughes
d964f5dec2 internal: Use 'ProjectJson' consistently
The Rust source code previously mised ProjectJson and JsonProject,
and the TypeScript definition didn't match either.

Use 'ProjectJson' everywhere. This is purely an internal change.
2025-06-02 11:21:46 +01:00
Tshepang Mbambo
69e358393a tshepang has a new email 2025-06-02 12:13:08 +02:00
Tshepang Mbambo
c197636ca8
Merge pull request #2386 from Lysxia/fix-link
Fix link to GatherBorrows
2025-06-02 12:08:03 +02:00
Tshepang Mbambo
0e379a6082
Merge pull request #2435 from smanilov/patch-19
Add opaque type attributes
2025-06-02 11:55:19 +02:00
usamoi
80e44de2d3 remove f16: From<u16> 2025-06-02 17:51:45 +08:00
yukang
7167e7ce06 Fix false positive lint error from no_implicit_prelude attr 2025-06-02 17:49:01 +08:00
Tshepang Mbambo
1e77768dd6
Merge pull request #2437 from rust-lang/rustc-pull
Rustc pull update
2025-06-02 11:47:49 +02:00
Jana Dönszelmann
2e527f03d1
fix bug where borrowck tries to describe a name from a macro in another crate 2025-06-02 11:29:27 +02:00
Jana Dönszelmann
a5f7d44405
add test for 141764 2025-06-02 11:29:27 +02:00
Tshepang Mbambo
df2d8f1271
Merge pull request #2438 from smanilov/patch-20
Trivial: fix typo (change `foo` to `bar`)
2025-06-02 11:27:24 +02:00
yanglsh
a4360d6fc3 fix: unnecessary_debug_formatting FP inside Debug impl 2025-06-02 17:23:56 +08:00
michal kostrubiec
267f94e018 Added some bare-bones support for explict registers in ARM inline assembly 2025-06-02 11:22:20 +02:00
Samuel Tardieu
88bb8d169b
Fix semicolon_outside_block suggests wrongly when inside macros (#14954)
Closes rust-lang/rust-clippy#14926

changelog: [`semicolon_outside_block`] fix wrong suggestions when inside
macros
2025-06-02 09:17:55 +00:00
Lukas Wirth
6a44c01e86
Merge pull request #19897 from aibaars/patch-2
Produce ClosureBinder node in atom.rs
2025-06-02 09:13:04 +00:00
yanglsh
12fc6c7cc9 fix: semicolon_outside_block suggests wrongly when inside macros 2025-06-02 17:03:08 +08:00
Lukas Wirth
aba70e8f9d Add missing dyn keywords to tests that do not test for them
This ensures that these tests can be run on editions other than 2015
2025-06-02 11:02:50 +02:00
Lukas Wirth
87054fc811 Add missing 2015 edition directives
These tests specifically test 2015 edition behavior, so ensure that they can only be run with this edition
2025-06-02 11:00:46 +02:00
bohan
9b94caef4f allow macro_use as first segment 2025-06-02 16:30:21 +08:00
Stan Manilov
2556364580
Trivial: fix typo (change foo to bar)
There is no `foo` symbol in the preceding example. I assume the method `bar` is meant.
2025-06-02 10:52:31 +03:00
bors
52882f6522 Auto merge of #119899 - onur-ozkan:redesign-stage0-std, r=albertlarsan68,jieyouxu,mark-simulacrum,kobzol,jyn514,Noratrieb,WaffleLapkin,RalfJung,bjorn3
redesign stage 0 std

### Summary

**Blog post: https://blog.rust-lang.org/inside-rust/2025/05/29/redesigning-the-initial-bootstrap-sequence/**

This PR changes how bootstrap builds the stage 1 compiler by switching to precompiled stage 0 standard library instead of building the in-tree one. The goal was to update bootstrap to use the beta standard library at stage 0 rather than compiling it from source (see the motivation at https://github.com/rust-lang/compiler-team/issues/619).

Previously, to build a stage 1 compiler bootstrap followed this path:

```
download stage0 compiler -> build in-tree std -> compile stage1 compiler with in-tree std
```

With this PR, the new path is:

```
download stage0 compiler -> compile stage1 compiler with precompiled stage0 std
```

This also means that `cfg(bootstrap)`/`cfg(not(bootstrap))` is no longer needed for library development.

### Building "library"

Since stage0 `std` is no longer in-tree `x build/test/check library --stage 0` is now no-op. The minimum supported stage to build `std` is now 1. For the same reason, default stage values in the library profile is no longer 0.

Because building the in-tree library now requires a stage1 compiler, I highly recommend library developers to enable `download-rustc` to speed up compilation time.

<hr>

**Blog post: https://blog.rust-lang.org/inside-rust/2025/05/29/redesigning-the-initial-bootstrap-sequence/**

If you encounter a bug or unexpected results please open a topic in the [#t-infra/bootstrap](https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap) Zulip channel or create a [bootstrap issue](https://github.com/rust-lang/rust/issues/new?template=bootstrap.md).

(Review thread: https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap/topic/Review.20thread.3A.20stage.200.20redesign.20PR/with/508271433)

~~Blocked on https://github.com/rust-lang/rust/pull/122709~~

try-job: dist-x86_64-linux
try-job: `x86_64-msvc*`
try-job: `x86_64-apple-*`
try-job: `aarch64-apple`
try-job: x86_64-gnu
try-job: `x86_64-gnu-llvm*`
2025-06-02 07:49:18 +00:00
bors
91fad92585 Auto merge of #141773 - oli-obk:coro-borrow-parallel-loop, r=compiler-errors
Merge coroutine obligation checking into borrowck parallel loop

r? `@ghost`

attempts at increasing parallelism in parallel rustc by merging parallel blocks that run in sequence
2025-06-02 04:18:14 +00:00
The rustc-dev-guide Cronjob Bot
530d4b3f05 Merge from rustc 2025-06-02 04:08:41 +00:00
The rustc-dev-guide Cronjob Bot
a139353362 Preparing for merge from rustc 2025-06-02 04:08:33 +00:00
Michael Goulet
4a803d26ea Suppress redundant error 2025-06-02 02:19:35 +00:00
Michael Goulet
d2d0f62f78 Don't declare variables in ExprKind::Let in invalid positions 2025-06-02 02:19:34 +00:00
bors
2fc3deed9f Auto merge of #141760 - bjorn3:intrinsic_rework_part2, r=fee1-dead
Improve intrinsic handling in cg_ssa (part 2)

* Avoid computing function type and signature for intrinsics where possible
* Nicer handling of bool returning intrinsics

Follow up to https://github.com/rust-lang/rust/pull/141404
2025-06-02 00:57:45 +00:00
usamoi
d948907f80 add f16_epsilon and f128_epsilon 2025-06-02 08:00:15 +08:00
neeko-cat
c5e758d3ad
Fixed a typo in ManuallyDrop's doc 2025-06-02 01:55:29 +02:00
Nicholas Nethercote
abf5d4c334 Invert the sense of is_not_macro_export.
I find it much easier to think about in the positive sense.
2025-06-02 09:53:35 +10:00
Nicholas Nethercote
176c34a946 Invert the sense of is_not_macro_export.
I find it much easier to think about in the positive sense.
2025-06-02 09:53:35 +10:00
Nicholas Nethercote
bb063e6e1d Factor out repeated code into is_mod_inherent. 2025-06-02 09:53:35 +10:00
Tsukasa OI
bc4333545a RISC-V: Linux 6.15 riscv_hwprobe support
This commit adds support for `riscv_hwprobe` on the Linux kernel 6.15.
It adds feature detection of 8 extensions (4 of them are new in this).

Existing RISC-V Extensions:

1.  "Zicntr"
2.  "Zihpm"
3.  "Zalrsc"
4.  "Zaamo"

New RISC-V Extensions:

5.  "Zicbom"
6.  "Zfbfmin"
7.  "Zvfbfmin"
8.  "Zvfbfwma"
2025-06-01 22:58:42 +00:00
Folkert de Vries
52115419a3 use simd_bitreverse on aarch64 2025-06-01 22:58:15 +00:00
Noratrieb
198e89b533 Improve documentation for codegen options
This adds more information to many different codegen options. It should
not add any new guarantees, just document existing behavior.
2025-06-01 22:21:29 +02:00