Commit graph

18911 commits

Author SHA1 Message Date
Jakub Beránek
25dee4e56e
Skip more dist components 2025-06-25 16:05:28 +02:00
Jakub Beránek
e0f8e865db
Skip unnecessary components in x64 try builds 2025-06-25 16:05:26 +02:00
bors
a17780db7b Auto merge of #142997 - workingjubilee:rollup-6lxec87, r=workingjubilee
Rollup of 15 pull requests

Successful merges:

 - rust-lang/rust#135731 (Implement parsing of pinned borrows)
 - rust-lang/rust#138780 (Add `#[loop_match]` for improved DFA codegen)
 - rust-lang/rust#142453 (Windows: make `read_dir` stop iterating after the first error is encountered)
 - rust-lang/rust#142633 (Error on invalid signatures for interrupt ABIs)
 - rust-lang/rust#142768 (Avoid a bitcast FFI call in transmuting)
 - rust-lang/rust#142825 (Port `#[track_caller]` to the new attribute system)
 - rust-lang/rust#142844 (Enable short-ice for Windows)
 - rust-lang/rust#142934 (Tweak `-Zmacro-stats` measurement.)
 - rust-lang/rust#142955 (Couple of test suite fixes for cg_clif)
 - rust-lang/rust#142977 (rustdoc: Don't mark `#[target_feature]` functions as ⚠)
 - rust-lang/rust#142980 (Reduce mismatched-lifetime-syntaxes suggestions to MaybeIncorrect)
 - rust-lang/rust#142982 (Corrected spelling mistake in c_str.rs)
 - rust-lang/rust#142983 (Taint body on invalid call ABI)
 - rust-lang/rust#142988 (Update wasm-component-ld to 0.5.14)
 - rust-lang/rust#142993 (Update cargo)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-06-25 04:05:47 +00:00
Jubilee
2d73e6c6fe
Rollup merge of #142993 - ehuss:update-cargo, r=ehuss
Update cargo

2 commits in 84709f085062cbf3c51fa507527c1b2334015178..409fed7dc1553d49cb9a8c0637d12d65571346ce
2025-06-22 23:58:39 +0000 to 2025-06-23 15:55:04 +0000
- Fix potential deadlock in `CacheState::lock` (rust-lang/cargo#15698)
- feat(toml): Parse support for multiple build scripts (rust-lang/cargo#15630)
2025-06-24 19:45:37 -07:00
Jubilee
1d4955461b
Rollup merge of #142988 - alexcrichton:update-wasm-component-ld, r=Mark-Simulacrum
Update wasm-component-ld to 0.5.14

This brings in a few updates to the bundled `wasm-component-ld` dependency used by the `wasm32-wasip2` target. This primarily includes support for upcoming component model async/WASIp3 support which will be convenient to have native support for a few months from now.
2025-06-24 19:45:36 -07:00
Jubilee
2ad6272649
Rollup merge of #142825 - jdonszelmann:track-caller, r=oli-obk
Port `#[track_caller]` to the new attribute system

r? ``@oli-obk``

depends on https://github.com/rust-lang/rust/pull/142493

Closes rust-lang/rust#142783

(didn't add a test for this, this situation should simply never come up again, the code was simply wrong. lmk if I should add it, but it won't test something very useful)
2025-06-24 19:45:32 -07:00
Jubilee
4f477427b8
Rollup merge of #135731 - frank-king:feature/pin-borrow, r=eholk,traviscross
Implement parsing of pinned borrows

This PR implements part of #130494.

EDIT: It introduces `&pin mut $place` and `&pin const $place` as sugars for `std::pin::pin!($place)` and its shared reference equivalent, except that `$place` will not be moved when borrowing. The borrow check will be in charge of enforcing places cannot be moved or mutably borrowed since being pinned till dropped.

### Implementation steps:
- [x] parse the `&pin mut $place` and `&pin const $place` syntaxes
- [ ] borrowck of `&pin mut|const`
- [ ] support autoref of `&pin mut|const` when needed
2025-06-24 19:45:29 -07:00
bors
2c2bb995af Auto merge of #140999 - hkBst:update-escaper, r=nnethercote
update to literal-escaper 0.0.4 for better API without `unreachable` and faster string parsing

This is the replacement for just the part of https://github.com/rust-lang/rust/pull/138163 dealing with the changed API of unescape functionality, since that got moved into its own crate.

<del>This uses an unpublished version of literal-escaper (https://github.com/rust-lang/literal-escaper/pull/8).</del>

r? `@nnethercote`
2025-06-25 01:03:30 +00:00
Eric Huss
041fbe8543 Update cargo 2025-06-24 17:21:19 -07:00
Alex Crichton
4a112db96b Update wasm-component-ld to 0.5.14
This brings in a few updates to the bundled `wasm-component-ld`
dependency used by the `wasm32-wasip2` target. This primarily includes
support for upcoming component model async/WASIp3 support which will be
convenient to have native support for a few months from now.
2025-06-24 15:59:35 -07:00
Jana Dönszelmann
40a33af0f3
fix clippy 2025-06-24 23:00:31 +02:00
bors
28f1c80791 Auto merge of #142959 - bjorn3:sync_cg_clif-2025-06-24, r=bjorn3
Subtree sync for rustc_codegen_cranelift

The main highlight this time is a Cranelift update.

r? `@ghost`

`@rustbot` label +A-codegen +A-cranelift +T-compiler
2025-06-24 18:48:12 +00:00
Guillaume Gomez
d9ee943db2
Rollup merge of #142843 - dpaoliello:reproducible-build-2, r=jieyouxu
Enable reproducible-build-2 for Windows MSVC

Works with MSVC if instructing the linker to avoid timestamps and deleting the PDB between compilations.

Addresses item in rust-lang/rust#128602

---

try-job: x86_64-mingw-*
try-job: x86_64-msvc-*
try-job: i686-msvc-*
2025-06-24 15:39:40 +02:00
Guillaume Gomez
0377330be4
Rollup merge of #142704 - tgross35:remove-concat_idents, r=fee1-dead
Remove the deprecated unstable `concat_idents!` macro

In [rust-lang/rust#137653], the lang and libs-API teams did a joint FCP to deprecate
and eventually remove the long-unstable `concat_idents!` macro. The
deprecation is landing in 1.88, so do the removal here (target version
1.90).

This macro has been superseded by the more recent `${concat(...)}`
metavariable expression language feature, which avoids some of the
limitations of `concat_idents!`. The metavar expression is unstably
available under the [`macro_metavar_expr_concat`] feature.

History is mildly interesting here: `concat_idents!` goes back to 2011
when it was introduced with 513276e595 ("Add #concat_idents[] and
#ident_to_str[]"). The syntax looks a bit different but it still works
about the same:

    let asdf_fdsa = "<.<";
    assert(#concat_idents[asd,f_f,dsa] == "<.<");

    assert(#ident_to_str[use_mention_distinction]
           == "use_mention_distinction");

(That test existed from introduction until its removal here.)

Closes: https://github.com/rust-lang/rust/issues/29599

[rust-lang/rust#137653]: https://github.com/rust-lang/rust/pull/137653
[`macro_metavar_expr_concat`]: https://github.com/rust-lang/rust/issues/124225
2025-06-24 15:39:38 +02:00
bjorn3
dbe8682cd1 Update tidy exceptions 2025-06-24 11:38:38 +00:00
Trevor Gross
c978c8986f Move some issues-* tests to better homes
These tests were updated in the previous commit; while they are being
cleaned up, move them to a non-issue directory.
2025-06-24 10:55:47 +00:00
Guillaume Gomez
5f2dae19c4
Rollup merge of #140622 - petrochenkov:annusexp, r=jieyouxu
compiletest: Improve diagnostics for line annotation mismatches

When some line annotations are missing or misplaced, compiletest reports an error, but the error is not very convenient.
This PR attempts to improve the user experience.

- The "expected ... not found" messages are no longer duplicated.
- The `proc_res.status` and `proc_res.cmdline` message is no longer put in the middle of other messages describing the annotation mismatches, it's now put into the end.
- Compiletest now makes suggestions if there are fuzzy matches between expected and actually reported errors (e.g. the annotation is put on a wrong line).
- Missing diagnostic kinds are no longer produce an error eagerly, but instead treated as always mismatching kinds, so they can produce suggestions telling the right kind.

I'll post screenshots in the thread below, but the behavior shown on the screenshots can be reproduced locally using the new test `tests/ui/compiletest-self-test/line-annotation-mismatches.rs`.

This also fixes https://github.com/rust-lang/rust/issues/140940.

r? ``@jieyouxu``
2025-06-24 11:20:06 +02:00
Daniel Paoliello
81a7cb6718 Enable reproducible-build-2 for Windows 2025-06-23 14:34:08 -07:00
Jubilee
64cfd5b6d2
Rollup merge of #142908 - psumbera:solaris-tr, r=jieyouxu
Fix install-template.sh for Solaris tr

Allow to run install.sh also on Solaris where tr is not GNU tr.
2025-06-23 12:48:22 -07:00
Jubilee
b942c6d291
Rollup merge of #142827 - GuillaumeGomez:tidy-error-code-removal, r=Kobzol
Move error code explanation removal check into tidy

Follow-up of https://github.com/rust-lang/rust/pull/142677.

This PR replaces a shell script with rust code.

r? ghost
2025-06-23 12:48:21 -07:00
Vadim Petrochenkov
7a4f09c224 compiletest: Improve diagnostics for line annotation mismatches 2025-06-23 21:30:56 +03:00
bors
706f244db5 Auto merge of #142907 - lnicola:sync-from-ra, r=lnicola
Subtree update of `rust-analyzer`

r? `@ghost`
2025-06-23 15:57:38 +00:00
Petr Sumbera
c7bfb114b7 Fix install-template.sh for Solaris tr 2025-06-23 13:16:08 +02:00
Guillaume Gomez
4780f21fe5 Move error code explanation removal check into tidy 2025-06-23 13:16:00 +02:00
Guillaume Gomez
66060e6475 Create new CiInfo type in tidy checks to centralize CI related checks 2025-06-23 13:15:58 +02:00
bors
22be76b7e2 Auto merge of #142901 - matthiaskrgr:rollup-topt4p6, r=matthiaskrgr
Rollup of 5 pull requests

Successful merges:

 - rust-lang/rust#141597 (Document subdirectories of UI tests with README files)
 - rust-lang/rust#142823 (Port `#[no_mangle]` to new attribute parsing infrastructure)
 - rust-lang/rust#142828 (1.88.0 release notes)
 - rust-lang/rust#142854 (centralize `-Zmin-function-alignment` logic)
 - rust-lang/rust#142875 (Check rustdoc-json-types FORMAT_VERSION is correctly updated)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-06-23 06:37:23 +00:00
Marijn Schouten
707a6f5463 update to literal-escaper 0.0.4 for better API without unreachable and faster string parsing 2025-06-23 06:36:22 +00:00
Matthias Krüger
110492092c
Rollup merge of #142875 - GuillaumeGomez:rustdoc-json-types-version-update, r=Kobzol
Check rustdoc-json-types FORMAT_VERSION is correctly updated

Follow-up of https://github.com/rust-lang/rust/pull/142677.

``@nnethercote`` suggested that we should also ensure that the `FORMAT_VERSION` was only increased by 1 and we should check for it, this PR does it.

cc ``@aDotInTheVoid``
r? ghost
2025-06-23 06:07:21 +02:00
Eric Huss
74973d72fd Update cargo 2025-06-22 17:43:06 -07:00
Jonathan Brouwer
2084831cd5
Port #[no_mangle] to new attribute parsing infrastructure
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
2025-06-22 22:17:04 +02:00
Guillaume Gomez
8da1a6290d
Rollup merge of #142877 - yotamofek:pr/rustdoc/comment-eslint-installation-req, r=GuillaumeGomez
Document why tidy checks if `eslint` is installed via `npm`

Discussion here: rust-lang/rust#142851
2025-06-22 17:35:37 +02:00
Yotam Ofek
90524da730 Document why tidy checks if eslint is installed via npm 2025-06-22 15:18:58 +00:00
Guillaume Gomez
1a3cba8384 Check rustdoc-json-types FORMAT_VERSION correct change 2025-06-22 16:47:40 +02:00
Jonathan Brouwer
b24df42488
Port #[must_use] to new attribute parsing infrastructure
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
2025-06-22 14:51:58 +02:00
Jacob Pratt
bf63acfd35
Rollup merge of #142776 - dtolnay:hirattrstyle2, r=jdonszelmann
All HIR attributes are outer

Fixes https://github.com/rust-lang/rust/issues/142649. Closes https://github.com/rust-lang/rust/pull/142759.

All HIR attributes, including parsed and not yet parsed, will now be rendered as outer attributes by `rustc_hir_pretty`. The original style of the corresponding AST attribute(s) is not relevant for pretty printing, only for diagnostics.

r? ````@jdonszelmann````
2025-06-22 08:49:05 +02:00
Chayim Refael Friedman
9a0434ec19
Merge pull request #20056 from ShoyuVanilla/fmt-args-new
Minic rustc's new `format_args!` expansion
2025-06-22 04:35:11 +00:00
Shoyu Vanilla
03a8268286 Minic rustc's new format_args! expansion 2025-06-22 13:22:28 +09:00
Shoyu Vanilla
17a8ba905b Implement region negation to minicore and add a flag fmt_before_1_89_0 2025-06-22 12:01:19 +09:00
Folkert de Vries
0d4abfc7cc
forward the bootstrap runner to run-make
The runner was already forwarded to `compiletest`, this just passes it on to `run-make` and uses it in the `run` functions.
2025-06-22 01:37:51 +02:00
Chayim Refael Friedman
3fb8acb552
Merge pull request #20050 from LHolten/better-docs-for-exclude-imports-in-symbol-search
Add better documentation for excluding imports from symbol search
2025-06-21 20:34:56 +00:00
David Tolnay
6729b667ce
All HIR attributes are outer 2025-06-21 11:11:34 -07:00
Lukas Wirth
110bacdb4f
Merge pull request #20047 from ShoyuVanilla/comp-time-deps
internal: Utilize `cargo check --compile-time-deps`
2025-06-21 09:19:44 +00:00
Matthias Krüger
4e87031f2e
Rollup merge of #142804 - zachs18:rename-layouts-to-layoutdata-in-comments, r=saethlin
Rename `LayoutS` to `LayoutData` in comments

`LayoutS` was renamed to `LayoutData`, but some comments in the compiler were not changed. This updates comments in the compiler (and one section of commented-out code in rust-analyzer) to refer to `LayoutData` instead of `LayoutS`.

cc <https://github.com/rust-lang/rust/pull/132252>, `@workingjubilee`
2025-06-21 10:53:28 +02:00
Matthias Krüger
24f797ed84
Rollup merge of #142787 - samueltardieu:diag-items-for-clippy, r=Manishearth,Urgau
Add diagnostic items for Clippy

Clippy still uses some paths to access items from the standard library. Adding the missing diagnostic items allows removing the last remaining paths.

Closes rust-lang/rust-clippy#5393
2025-06-21 10:53:26 +02:00
Matthias Krüger
06cc41b4ec
Rollup merge of #142785 - epage:link, r=ehuss
fix(linkcheck): Build using the lockfile

This is to unblock cargo from servo/html5ever#623

I ran `linkcheck.sh` locally and it now works
2025-06-21 10:53:26 +02:00
Matthias Krüger
5f727066d8
Rollup merge of #142502 - nnethercote:rustdoc-json-GenericArgs, r=aDotInTheVoid
rustdoc_json: improve handling of generic args

This PR fixes some inconsistencies and inefficiencies in how generic args are handled by rustdoc-json-types.

r? `@aDotInTheVoid`
2025-06-21 10:53:25 +02:00
Zakaria Elkatani
29a8b831b1 fix: Correct grammar in remove all unused imports assist 2025-06-21 01:48:55 -04:00
Shoyu Vanilla
8329c93bd4 internal: Utilize cargo check --compile-time-deps 2025-06-21 14:36:44 +09:00
Nicholas Nethercote
7fa8901cd0 rustdoc_json: represent generic args consistently.
They show up in three places: once as `Option<Box<GenericArgs>>`, once
as `Box<GenericArgs>`, and once as `GenericArgs`. The first option is
best. It is more compact because generic args are often missing. This
commit changes the latter two to the former.

Example output, before and after, for the `AssocItemConstraint` change:
```
{"name":"Offset","args":{"angle_bracketed":{"args":[],"constraints":[]}},"binding":{...}}
{"name":"Offset","args":null,"binding":{...}}
```
Example output, before and after, for the `Type::QualifiedPath` change:
```
{"qualified_path":{"name":"Offset","args":{"angle_bracketed":{"args":[],"constraints":[]}}, ...}}
{"qualified_path":{"name":"Offset","args":null, ...}}
```
This reduces JSON output size, but not by much (e.g. 0.5%), because
`AssocItemConstraint` and `Type::QualifiedPath` are uncommon.
2025-06-21 13:52:46 +10:00
Trevor Gross
cd85b9d832
Rollup merge of #142677 - GuillaumeGomez:check-format-version-update, r=Kobzol
Add CI check to ensure that rustdoc JSON `FORMAT_VERSION` is correctly updated

Follow-up of https://github.com/rust-lang/rust/pull/142601.

Tested it locally with: `BASE_COMMIT=1bb335244c311a07cee165c28c553c869e6f64a9 src/ci/docker/host-x86_64/mingw-check-1/validate-rustdoc-json-format-version-update.sh` (where `BASE_COMMIT` value was the commit before I made a wrong change with the `FORMAT_VERSION` update).

This is a first version. I plan to send a follow-up to also ensure that `FORMAT_VERSION` is updated if any code change is done in `rustdoc-json-types`. For that I just need to check that a line not starting with `/` and not an empty line was updated. Fun times with `grep` ahead. :')

cc `@aDotInTheVoid`
r? `@nnethercote`
2025-06-20 23:25:56 -04:00