Commit graph

298644 commits

Author SHA1 Message Date
dianqk
327fe35db3
Rollup merge of #143195 - Kivooeo:tf17, r=tgross35
`tests/ui`: A New Order [17/N]

> [!NOTE]
>
> Intermediate commits are intended to help review, but will be squashed prior to merge.

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang/rust#133895.

r? `@tgross35`
2025-06-30 19:23:21 +08:00
dianqk
ab633af710
Rollup merge of #143190 - dianqk:new-method, r=oli-obk
Use the `new` method for `BasicBlockData` and `Statement`

This is the NFC part of rust-lang/rust#142771. I split it to make it easier to review for rust-lang/rust#142771. Even without rust-lang/rust#142771, I think this change is worthwhile.
2025-06-30 19:23:20 +08:00
dianqk
043fc5b230
Rollup merge of #143187 - yotamofek:mailmap, r=jieyouxu
Add my work email to mailmap
2025-06-30 19:23:20 +08:00
dianqk
462c7c3fd8
Rollup merge of #143176 - kilavvy:master, r=jieyouxu
fix typos and improve clarity in documentation

```
Description:

This pull request corrects minor typos and improves wording for clarity across several documentation files, including:

- Correcting instrinsics → intrinsics
- Correcting preferrably → preferably
- Correcting Orginally → Originally
-  Correcting resiliant → resilient

```
2025-06-30 19:23:19 +08:00
dianqk
8ccffc987a
Rollup merge of #143168 - Kivooeo:tf16, r=tgross35
`tests/ui`: A New Order [16/N]

> [!NOTE]
>
> Intermediate commits are intended to help review, but will be squashed prior to merge.

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang/rust#133895.

r? `@tgross35`

(just small one to test new method, also I should squash all this commits except move commit, so we after review will end up having like one move commit and one commit with changes, right?)
2025-06-30 19:23:18 +08:00
dianqk
3a35f36ae8
Rollup merge of #143159 - compiler-errors:freshen-re-error, r=oli-obk
Do not freshen `ReError`

Because `ReError` has `ErrorGuaranteed` in it, it affects candidate selection and thus causes incompleteness which leads to weirdness in eval. See the comment in the test.

Also remove an unnecessary `lookup_op_method` since it doesn't effect tests.

Fixes rust-lang/rust#132882.

r? types
2025-06-30 19:23:18 +08:00
dianqk
0952f86de3
Rollup merge of #143118 - Kivooeo:tf15, r=tgross35
`tests/ui`: A New Order [15/N]

> [!NOTE]
>
> Intermediate commits are intended to help review, but will be squashed prior to merge.

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang/rust#133895.

r? `@jieyouxu`
2025-06-30 19:23:17 +08:00
dianqk
a94f0a4af8
Rollup merge of #143090 - ChrisDenton:workaround1, r=tgross35
Workaround for memory unsafety in third party DLLs

Resolves rust-lang/rust#143078

Note that we can't make any guarantees if third parties intercept OS functions and don't implement them according to the documentation. However, I think it's practical to attempt mitigations when issues are encountered in the wild and the mitigation itself isn't too invasive.
2025-06-30 19:23:16 +08:00
dianqk
8c4bcb8625
Rollup merge of #143066 - compiler-errors:let-chain-solver, r=lcnr
Use let chains in the new solver

Self-explanatory

Let chains are stable as of today

r? lcnr
2025-06-30 19:23:16 +08:00
dianqk
d2dc99cc83
Rollup merge of #142514 - LorrensP-2158466:miri-float-nondet-pow, r=RalfJung
Miri: handling of SNaN inputs in `f*::pow` operations

fixes [miri/#4286](https://github.com/rust-lang/miri/issues/4286) and related to rust-lang/rust#138062 and [miri/#4208](https://github.com/rust-lang/miri/issues/4208#issue-2879058184).

For the following cases of the powf or powi operations, Miri returns either `1.0` or an arbitrary `NaN`:
- `powf(SNaN, 0.0)`
- `powf(1.0, SNaN)`
- `powi(SNaN, 0)`

Also added a macro in `miri/tests/pass/float.rs` which conveniently checks if both are indeed returned from such an operation.

Made these changes in the rust repo so I could test against stdlib, since these were impacted some time ago and were fixed in rust-lang/rust#138062. Tested with:
```fish
env MIRIFLAGS=-Zmiri-many-seeds ./x miri --no-fail-fast std core coretests -- f32 f64
```
This was successful. This does take a while, so I recommend using `--no-doc` and separate use of `f32` or `f64`

The pr is somewhat split up into 3 main commits, which implement the cases described above. The first commit also introduces the macro, and the last commit is just a global refactor of some things.

r? `@RalfJung`
2025-06-30 19:23:15 +08:00
dianqk
384d699893
Rollup merge of #142429 - Kivooeo:tf13, r=jieyouxu
`tests/ui`: A New Order [13/N]

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang/rust#133895.

r? ```@jieyouxu```
2025-06-30 19:23:14 +08:00
Kivooeo
c240566561 cleaned up some tests 2025-06-30 12:45:47 +05:00
Kivooeo
1e3a2b2d4a cleaned up some tests 2025-06-30 11:23:01 +05:00
Kivooeo
580bc12844 cleaned up some tests 2025-06-30 11:16:18 +05:00
bors
f19142044f Auto merge of #142941 - compiler-errors:shallow-bail, r=lcnr
Shallowly bail from `coerce_unsized` more

We do a *lot* of coercion in HIR typeck. Most of the time we're just coercing a type to itself, but we always try `coerce_unsized` even if it's not necessary.

Let's avoid doing that by adding a fast path to `coerce_unsized`; see the comment in that function.
2025-06-30 02:02:46 +00:00
Ralf Jung
67ab61e8ba add float_nan test for powf
plus various minor tweaks
2025-06-29 22:32:31 +02:00
LorrensP-2158466
60a48287d7 make some powf and powi cases involving SNaN non-deterministic 2025-06-29 22:25:41 +02:00
bors
35f6036521 Auto merge of #142802 - compiler-errors:dedup-analyses, r=lcnr
Collapse Analysis|Borrowck|PostBorrowckAnalysis when there are no opaques

r? lcnr
2025-06-29 19:12:29 +00:00
bors
ed2d759783 Auto merge of #143137 - RalfJung:miri-sync, r=RalfJung
Miri subtree update

r? `@ghost`
2025-06-29 16:04:05 +00:00
Kivooeo
a38c78c461 moved tests 2025-06-29 18:06:00 +05:00
bors
5e749eb66f Auto merge of #143183 - GuillaumeGomez:rollup-g60lr91, r=GuillaumeGomez
Rollup of 4 pull requests

Successful merges:

 - rust-lang/rust#142078 (Add SIMD funnel shift and round-to-even intrinsics)
 - rust-lang/rust#142214 (`tests/ui`: A New Order [9/N])
 - rust-lang/rust#142417 (`tests/ui`: A New Order [12/N])
 - rust-lang/rust#143030 (Fix suggestion spans inside macros for the `unused_must_use` lint)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-06-29 13:02:15 +00:00
dianqk
24e553e6bc
mir: Use the new method for BasicBlockData 2025-06-29 20:39:13 +08:00
dianqk
9f9cd5e283
mir: Add a new method to statement
Avoid introducing a large number of changes when adding optional initialization fields.
2025-06-29 20:13:36 +08:00
Yotam Ofek
71a841802d Add my work email to mailmap 2025-06-29 11:04:49 +00:00
Kivooeo
d0bd27924e cleaned up some tests 2025-06-29 15:37:33 +05:00
Guillaume Gomez
f9f3935fa7
Rollup merge of #143030 - Urgau:issue-143025, r=SparrowLii
Fix suggestion spans inside macros for the `unused_must_use` lint

This PR fixes the suggestion spans inside macros for the `unused_must_use` lint by trying to find the oldest ancestor span.

Fixes https://github.com/rust-lang/rust/issues/143025
2025-06-29 12:29:55 +02:00
Guillaume Gomez
05b209d3a2
Rollup merge of #142417 - Kivooeo:tf12, r=jieyouxu
`tests/ui`: A New Order [12/N]

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang/rust#133895.

r? `@jieyouxu`
2025-06-29 12:29:55 +02:00
Guillaume Gomez
15b227f715
Rollup merge of #142214 - Kivooeo:tf9, r=jieyouxu
`tests/ui`: A New Order [9/N]

Some `tests/ui/` housekeeping, to trim down number of tests directly under `tests/ui/`. Part of rust-lang/rust#133895.
2025-06-29 12:29:54 +02:00
Guillaume Gomez
66ad1f2abf
Rollup merge of #142078 - sayantn:more-intrinsics, r=workingjubilee
Add SIMD funnel shift and round-to-even intrinsics

This PR adds 3 new SIMD intrinsics

 - `simd_funnel_shl` - funnel shift left
 - `simd_funnel_shr` - funnel shift right
 - `simd_round_ties_even` (vector version of `round_ties_even_fN`)

TODO (future PR): implement `simd_fsh{l,r}` in miri, cg_gcc and cg_clif (it is surprisingly hard to implement without branches, the common tricks that rotate uses doesn't work because we have 2 elements now. e.g, the `-n&31` trick used by cg_gcc to implement rotate doesn't work with this because then `fshl(a, b, 0)` will be `a | b`)

[#t-compiler > More SIMD intrinsics](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/More.20SIMD.20intrinsics/with/522130286)

`@rustbot` label T-compiler T-libs A-intrinsics F-core_intrinsics
r? `@workingjubilee`
2025-06-29 12:29:53 +02:00
kilavvy
897c4ee406 Update README.md
- Update ui.md
- Update type-alias-impl-trait.md
- Update README.md
2025-06-29 12:29:28 +03:00
bors
5ca574e85b Auto merge of #143173 - matthiaskrgr:rollup-ieu5k05, r=matthiaskrgr
Rollup of 11 pull requests

Successful merges:

 - rust-lang/rust#142021 (Doc: clarify priority of lint level sources)
 - rust-lang/rust#142367 (Add regression test for rust-lang/rust#137857 to ensure that we generate intra doc links for extern crate items.)
 - rust-lang/rust#142641 (Generate symbols.o for proc-macros too)
 - rust-lang/rust#142889 (Clarify doc comment on unix OpenOptions)
 - rust-lang/rust#143063 (explain `ImportData::imported_module`)
 - rust-lang/rust#143088 (Improve documentation of `TagEncoding`)
 - rust-lang/rust#143135 (fix typos on some doc comments)
 - rust-lang/rust#143138 (Port `#[link_name]` to the new attribute parsing infrastructure)
 - rust-lang/rust#143155 (`librustdoc` house-keeping 🧹)
 - rust-lang/rust#143169 (Remove unused feature gates)
 - rust-lang/rust#143171 (Fix the span of trait bound modifier `[const]`)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-06-29 07:22:39 +00:00
Ralf Jung
e56294060a disable ptrace codepath since it doesn't build on many targets 2025-06-29 07:12:13 +02:00
Ralf Jung
a317123ad0 fix miri build in bootstrap 2025-06-29 07:05:17 +02:00
Matthias Krüger
a262c001f6
Rollup merge of #143171 - fmease:fix-span-of-maybe-const-mod, r=compiler-errors
Fix the span of trait bound modifier `[const]`

r? project-const-traits or anyone
2025-06-29 06:59:33 +02:00
Matthias Krüger
77757e7680
Rollup merge of #143169 - yotamofek:pr/unneeded-features, r=compiler-errors
Remove unused feature gates

After finding some unused feature gates in rust-lang/rust#143155 , I wrote a small script to see if I can find any others.
And I did. Not a lot, but still a small win 😁
Contains a few instances of `iter_from_coroutine` that can be removed due to rust-lang/rust#142801 (I guess).
2025-06-29 06:59:32 +02:00
Matthias Krüger
8dbc25ce9f
Rollup merge of #143155 - yotamofek:pr/rustdoc/housekeeping, r=GuillaumeGomez
`librustdoc` house-keeping 🧹

This PR mostly removes a bunch of crate-level attributes that were added at some point, but then later on became unnecessary:
- some `#[feature]` gates
- some `#[allow]`s
- a `#[recursion_limit]`

Then I went ahead and sprinkled some tidy sorting on the remaining attrs, and `Cargo.toml`.

Trying to give my anal retentiveness some peace of mind 😅
2025-06-29 06:59:32 +02:00
Matthias Krüger
5fc48ff5aa
Rollup merge of #143138 - JonathanBrouwer:link_name_parser, r=jdonszelmann
Port `#[link_name]` to the new attribute parsing infrastructure

Ports `link_name` to the new attribute parsing infrastructure for https://github.com/rust-lang/rust/issues/131229#issuecomment-2971353197

r? `@jdonszelmann`
2025-06-29 06:59:31 +02:00
Matthias Krüger
170fd43d7d
Rollup merge of #143135 - tshepang:typos, r=compiler-errors
fix typos on some doc comments
2025-06-29 06:59:31 +02:00
Matthias Krüger
6404d29442
Rollup merge of #143088 - firefighterduck:improve-doc-discr-tag, r=RalfJung
Improve documentation of `TagEncoding`

This PR is follow-up from the [discussion here](https://rust-lang.zulipchat.com/#narrow/channel/182449-t-compiler.2Fhelp/topic/.E2.9C.94.20VariantId.3DDiscriminant.20when.20tag.20is.20niche.20encoded.3F/with/524384295).

It aims at making the `TagEncoding` documentation less ambiguous and more detailed with references to relevant implementation sides. It especially clears up the ambiguous use of discriminant/variant index, which sparked the discussion referenced above.

PS: While working with layout data, I somehow ended up looking at the docs for `FakeBorrowKind` and noticed that the one example was not in a doc comment. I hope that this is minor enough of a fix for it to be okay in this otherwise unrelated PR.
2025-06-29 06:59:30 +02:00
Matthias Krüger
fd0062cde4
Rollup merge of #143063 - bvanjoi:docs-resolve, r=petrochenkov
explain `ImportData::imported_module`

r? `@petrochenkov`
2025-06-29 06:59:30 +02:00
Matthias Krüger
eef87fd974
Rollup merge of #142889 - nabijaczleweli:rusts, r=Mark-Simulacrum
Clarify doc comment on unix OpenOptions
2025-06-29 06:59:29 +02:00
Matthias Krüger
e68f13c9d4
Rollup merge of #142641 - bjorn3:proc_macro_symbols_o, r=jieyouxu
Generate symbols.o for proc-macros too

To ensure used statics are functioning correctly for proc-macros too.
2025-06-29 06:59:28 +02:00
Matthias Krüger
e5bd07ac2e
Rollup merge of #142367 - GuillaumeGomez:extern-crate-items-intra-doc, r=lolbinarycat
Add regression test for #137857 to ensure that we generate intra doc links for extern crate items.

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

I checked that linking to extern crates was generating valid links (with the `/index.html` part) and since it's already working, just adding a regression test.

r? `@notriddle`
2025-06-29 06:59:28 +02:00
Matthias Krüger
c0e0528857
Rollup merge of #142021 - HamidrezaSK:fix-lint-precedence-doc, r=ehuss
Doc: clarify priority of lint level sources

This updates the rustc book to clearly document how conflicting lint configurations are resolved across different sources, including command-line flags, crate-level attributes, in-line attributes, and `--cap-lints`.

It also explains the special behavior of `forbid` and `force_warn`.

Fixes rust-lang/rust#124088
2025-06-29 06:59:27 +02:00
bors
dddd7ab962 Auto merge of #143161 - GuillaumeGomez:subtree-update_cg_gcc_2025-06-28, r=GuillaumeGomez
GCC backend subtree update

cc `@antoyo`

r? ghost
2025-06-29 04:18:46 +00:00
León Orell Valerian Liehr
f77fead002
Fix the span of trait bound modifier [const] 2025-06-29 04:56:28 +02:00
bors
8141c2265f Auto merge of #143160 - ehuss:update-cargo, r=ehuss
Update cargo

7 commits in 409fed7dc1553d49cb9a8c0637d12d65571346ce..930b4f62cfcd1f0eabdb30a56d91bf6844b739bf
2025-06-23 15:55:04 +0000 to 2025-06-28 14:58:43 +0000
- Use a different lint for the `fix_only_once_for_duplicates` test (rust-lang/cargo#15713)
- chore: bump to 0.91.0; update changelog (rust-lang/cargo#15710)
- Add `http.proxy-cainfo` config for proxy certs (rust-lang/cargo#15374)
- chore(deps): update msrv (3 versions) to v1.86 (rust-lang/cargo#15709)
- chore(deps): update msrv (1 version) to v1.88 (rust-lang/cargo#15706)
- Rework `cargo-test-support` & `testsuite` to use `CARGO_BIN_EXE_*` for Cargo (rust-lang/cargo#15692)
- fix: Expand error messages around path dependency on `cargo package` and `cargo publish` (rust-lang/cargo#15705)
2025-06-29 01:16:18 +00:00
Trevor Gross
74657a4a1a Move some UI tests to more apropriate directories
Prepare for rework done in the rest of [PR143118].

[PR143118]: https://www.github.com/rust-lang/rust/pull/143118

Co-authored-by: Kivooeo <Kivooeo123@gmail.com>
2025-06-28 19:07:29 -05:00
Yotam Ofek
8429c9911b Remove unused feature gates 2025-06-28 23:36:46 +00:00
Guillaume Gomez
3dcbc1e5bc Remove () returned value 2025-06-29 00:20:15 +02:00