Commit graph

295447 commits

Author SHA1 Message Date
Boxy
3d58b04b2d bump channel 2025-08-04 10:33:02 +01:00
Boxy
623eeaa056 release notes 2025-08-04 10:31:58 +01:00
bors
4a18378b4d Auto merge of #144800 - Mark-Simulacrum:beta-next, r=Mark-Simulacrum
[beta] backports

Backport:

*  add unsupported_calling_conventions to lint list rust-lang/rust#144772
*  thread name in stack overflow message rust-lang/rust#144500
*  rustdoc: don't treat methods under const impls or traits as const rust-lang/rust#143381
* [beta] Clippy beta backport rust-lang/rust#144742

r? `@Mark-Simulacrum`
2025-08-02 17:18:41 +00:00
Philipp Krones
3158607eb9 Revert "return_and_then: only lint returning expressions (#14783)"
This reverts commit 459364b971, reversing
changes made to 62ba9969a4.
2025-08-02 07:46:38 -04:00
Philipp Krones
c1d016f6cd Revert "Extend manual_is_variant_and lint to check for boolean map comparisons (#14646)"
This reverts commit 551870df96, reversing
changes made to 3927a61a54.
2025-08-02 07:46:24 -04:00
Timo
4c75f27497 Consider deref'ed argument as non-temporary (#15172)
If there are more than one dereference (there is one corresponding
matched with a borrow in any case), consider that the argument might
point to a place expression, which is the safest choice.

Also, use an appropriate number of dereferences in suggestions involving
arguments using themselves multiple dereferences.

Fixes rust-lang/rust-clippy#15166

changelog: [`swap_with_temporary`]: fix false positive leading to
different semantics being suggested, and use the right number of
dereferences in suggestion

r? y21

<!-- TRIAGEBOT_START -->

<!-- TRIAGEBOT_SUMMARY_START -->

### Summary Notes

-
[beta-nomination](https://github.com/rust-lang/rust-clippy/pull/15172#issuecomment-3016752569)
by [samueltardieu](https://github.com/samueltardieu)

*Managed by `@rustbot`—see
[help](https://forge.rust-lang.org/triagebot/note.html) for details*

<!-- TRIAGEBOT_SUMMARY_END -->
<!-- TRIAGEBOT_END -->
2025-08-02 07:46:08 -04:00
dswij
db83b3bf6b Move uninlined_format_args to pedantic (#15287)
Fixes https://github.com/rust-lang/rust-clippy/issues/15151

See also
https://rust-lang.zulipchat.com/#narrow/channel/257328-clippy/topic/uninlined_format_args.20is.20contentious/

changelog: Move [`uninlined_format_args`] to `pedantic`
2025-08-02 07:45:53 -04:00
Deadbeef
7843c042c9 rustdoc: don't treat methods under const impls or traits as const 2025-08-01 17:36:10 -04:00
joboet
7ab3ec175f thread name in stack overflow message 2025-08-01 17:36:10 -04:00
Ralf Jung
f433cb4489 add unsupported_calling_conventions to lint list 2025-08-01 17:36:10 -04:00
bors
4229c2e708 Auto merge of #144414 - cuviper:beta-next, r=cuviper
[beta] backports

- Reword mismatched-lifetime-syntaxes text based on feedback rust-lang/rust#143914
- Fix `-Ctarget-feature`s getting ignored after `crt-static` rust-lang/rust#144143
- Mitigate `#[align]` name resolution ambiguity regression with a rename rust-lang/rust#144080

r? cuviper
2025-07-25 00:51:03 +00:00
Josh Stone
156e2a61dd Update another test for rustc_align 2025-07-24 12:57:12 -07:00
Jieyou Xu
2e832047c6 Mitigate #[align] name resolution ambiguity regression with a rename
From `#[align]` -> `#[rustc_align]`. Attributes starting with `rustc`
are always perma-unstable and feature-gated by `feature(rustc_attrs)`.

See regression RUST-143834.

For the underlying problem where even introducing new feature-gated
unstable built-in attributes can break user code such as

```rs
macro_rules! align {
    () => {
        /* .. */
    };
}

pub(crate) use align; // `use` here becomes ambiguous
```

refer to RUST-134963.

Since the `#[align]` attribute is still feature-gated by
`feature(fn_align)`, we can rename it as a mitigation. Note that
`#[rustc_align]` will obviously mean that current unstable user code
using `feature(fn_aling)` will need additionally `feature(rustc_attrs)`,
but this is a short-term mitigation to buy time, and is expected to be
changed to a better name with less collision potential.

See
<https://rust-lang.zulipchat.com/#narrow/channel/238009-t-compiler.2Fmeetings/topic/.5Bweekly.5D.202025-07-17/near/529290371>
where mitigation options were considered.

(cherry picked from commit 69b71e4410)
2025-07-24 11:02:01 -07:00
Jieyou Xu
43056c1614 Add test demonstrating current beta #[align] name resolution regression
See RUST-143834.

(cherry picked from commit b2e94bf020)
2025-07-24 09:54:41 -07:00
Jens Reidel
3df07a67c1 tests: Add a regression test for crt-static with target features
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
(cherry picked from commit 1b35d5f89c)
2025-07-24 09:54:11 -07:00
Jens Reidel
8791ef8a2a rustc_codegen_ssa: Don't skip target-features after crt-static
The current behaviour introduced by commit
a50a3b8e31 would discard any
target features specified after crt-static (the only member of
RUSTC_SPECIFIC_FEATURES). This is because it returned instead of
continuing processing the next flag.

Signed-off-by: Jens Reidel <adrian@travitia.xyz>
(cherry picked from commit 664d742933)
2025-07-24 09:54:11 -07:00
Jake Goulding
c06b586824 Reword mismatched-lifetime-syntaxes text based on feedback
Key changes include:

- Removal of the word "syntax" from the lint message. More accurately,
  it could have been something like "syntax group" or "syntax
  category", but avoiding it completely is easier.
- The primary lint message now reflects exactly which mismatch is
  occurring, instead of trying to be general. A new `help` line is
  general across the mismatch kinds.
- Suggestions have been reduced to be more minimal, no longer also
  changing non-idiomatic but unrelated aspects.
- Suggestion text no longer mentions changes when those changes don't
  occur in that specific suggestion.

(cherry picked from commit 5530744318)
2025-07-24 09:53:53 -07:00
bors
20c571f4ca Auto merge of #144087 - cuviper:beta-next, r=cuviper
[beta] backports

- Taint body on invalid call ABI rust-lang/rust#142983
- Fix rustdoc not correctly showing attributes with re-exports rust-lang/rust#143083
- trait_sel: `MetaSized` always holds temporarily rust-lang/rust#144016
- Ensure home directory exists rust-lang/rust#144003

r? cuviper
2025-07-21 16:49:10 +00:00
Chris Denton
7d0e05d055 Ensure home directory exists
This works around a missing mingw home directory in CI

(cherry picked from commit 262d02e6fd)
2025-07-21 09:09:35 -07:00
David Wood
0648a43848 trait_sel: MetaSized always holds temporarily
As a temporary measure while a proper fix for
`tests/ui/sized-hierarchy/incomplete-inference-issue-143992.rs`
is implemented, make `MetaSized` obligations always hold. In effect,
temporarily reverting the `sized_hierarchy` feature. This is a small
change that can be backported.

(cherry picked from commit 8d64937dc2)
2025-07-17 14:02:06 -07:00
Jonathan Brouwer
d499468525 Fix rustdoc not correctly showing attributes with re-exports
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
(cherry picked from commit 58418d881a)
2025-07-17 14:02:06 -07:00
Michael Goulet
7e0eb3bc6d Taint body on invalid call ABI
(cherry picked from commit e776065164)
2025-07-17 14:02:06 -07:00
Michael Goulet
c9ba9aab8c Add rust-invalid ABI
(cherry picked from commit e245570def)
2025-07-17 14:02:06 -07:00
bors
c24557234c Auto merge of #143794 - lnicola:ra-backports, r=cuviper
`rust-analyzer` backports

Closes https://github.com/rust-lang/rust-analyzer/issues/20182
2025-07-12 17:50:40 +00:00
Shoyu Vanilla
07d659cce0 fix: Use ROOT hygiene for args inside new format_args! expansion 2025-07-11 17:11:02 +03:00
Shoyu Vanilla
10fce1fb94 Backport new sized-hierarchy trait bounds in old ways 2025-07-11 17:10:46 +03:00
Lukas Wirth
482e75b511 Adjust minicore for Sized Hierarchy changes 2025-07-11 17:10:32 +03:00
Shoyu Vanilla
066946b47f Minic rustc's new format_args! expansion 2025-07-11 17:09:14 +03:00
Shoyu Vanilla
f7b7f67b26 Implement region negation to minicore and add a flag fmt_before_1_89_0 2025-07-11 17:08:46 +03:00
bors
b1237106c5 Auto merge of #143757 - cuviper:beta-next, r=cuviper
[beta] backports

- Beta backport: null terminate UNICODE_STRINGs rust-lang/rust#143275
- Fix hang in --print=file-names in bootstrap rust-lang/rust#142928
- Reduce mismatched-lifetime-syntaxes suggestions to MaybeIncorrect rust-lang/rust#142980
- Update LLVM submodule rust-lang/rust#143126
- Do not unify borrowed locals in CopyProp. rust-lang/rust#143509
- Disable docs for `compiler-builtins` and `sysroot` rust-lang/rust#143660
- Update version placeholders in stdarch rust-lang/stdarch#1840

r? cuviper
2025-07-11 12:54:29 +00:00
Josh Stone
83c0a8c833 Update version placeholders in stdarch 2025-07-10 13:42:27 -07:00
Josh Stone
9dcc1d457d Disable docs for compiler-builtins and sysroot
Bootstrap already had a manual doc filter for the `sysroot` crate, but
other library crates keep themselves out of the public docs by setting
`[lib] doc = false` in their manifest. This seems like a better solution
to hide `compiler-builtins` docs, and removes the `sysroot` hack too.

(cherry picked from commit 87e7539fcd)
2025-07-10 13:30:37 -07:00
Camille GILLOT
af99e98988 Do not optimize stable-mir ui tests.
(cherry picked from commit b1fdb4bdc8)
2025-07-10 13:30:37 -07:00
Camille GILLOT
091578b73d Do not unify borrowed locals in CopyProp.
(cherry picked from commit bab9c752e8)
2025-07-10 13:30:37 -07:00
dianqk
d53af55125 Update LLVM submodule
(cherry picked from commit 1339b90550)
2025-07-10 13:30:37 -07:00
dianqk
5ebfeddae5 Add a regression test for ld64
(cherry picked from commit 32115c3a17)
2025-07-10 13:30:37 -07:00
Jake Goulding
736f54bb35 Reduce mismatched-lifetime-syntaxes suggestions to MaybeIncorrect
`cargo fix` does not have a way of distinguishing a suggestion with
multiple spans which should all be applied from multiple suggestions
where only one should be applied (see issue 53934). `cargo fix` only
works with `MachineApplicable` suggestions, so downgrading the
applicability will stop `cargo` from suggesting the user run `cargo
fix`. rust-analyzer does work with `MaybeIncorrect`, so interactive
fixes are still available.

(cherry picked from commit 46e9d2f9fc)
2025-07-10 13:30:37 -07:00
Noratrieb
cd3bc5f082 Fix hang in --print=file-names in bootstrap
In an interactive context, the subprocess inherited a real tty stdin,
which lead it it waiting for something to happen, even though nothing
happened. By explicitly passing null as stdin we make sure an empty file
is passed, which achieves the desired behavior.

(cherry picked from commit 3003050d47)
2025-07-10 13:30:37 -07:00
Chris Denton
8eb45546d5
Null terminate UNICODE_STRINGs 2025-07-07 21:45:03 +00:00
bors
b5e10d8c00 Auto merge of #143068 - cuviper:beta-next, r=cuviper
[beta] stage0 bump to 1.88.0

Part of our normal release process:
https://forge.rust-lang.org/release/process.html#beta-stage0-update-friday

r? cuviper
2025-07-02 07:33:58 +00:00
Josh Stone
0e111a3939 stage0 bump to 1.88.0 2025-06-26 11:33:11 -07:00
bors
a8d097a4ed Auto merge of #142991 - ehuss:update-beta-cargo, r=ehuss
[beta] update cargo and reference

## cargo

1 commits in 84709f085062cbf3c51fa507527c1b2334015178..c24e1064277fe51ab72011e2612e556ac56addf7
2025-06-22 23:58:39 +0000 to 2025-06-23 13:53:07 -0700
- [Beta-1.89] Fix potential deadlock in `CacheState::lock` (rust-lang/cargo#15699)

### reference

3 commits in 50fc1628f36563958399123829c73755fa7a8421..9571d4d38cc580bd9fe926f97fccd98f215564a9
2025-06-19 02:02:39 +0000 to 2025-06-24 22:32:56 +0000
- Add new temporary lifetime extension rule (rust-lang/reference#1813)
- Fix smart punctuation inside grammar terminals (rust-lang/reference#1869)
- Fix placement of codegen link definitions (rust-lang/reference#1868)
2025-06-25 07:10:39 +00:00
Eric Huss
11e55c6302 [beta] Update src/doc/reference 2025-06-24 17:05:57 -07:00
Eric Huss
6242753650 [beta] Update cargo 2025-06-24 16:59:42 -07:00
bors
390a0ab5dc Auto merge of #142920 - cuviper:beta-next, r=cuviper
[beta] Prepare Rust 1.89.0

- Update version placeholders
- Update channel to beta
- Account for beta revisions when normalizing versions rust-lang/rust#142930

r? cuviper
2025-06-23 22:36:51 +00:00
Josh Stone
7af995f461 Account for beta revisions when normalizing versions
Several UI tests have a `normalize-stderr` for "you are using x.y.z"
rustc versions, and that regex is flexible enough for suffixes like
"-nightly" and "-dev", but not for "-beta.N". We can just add '.' to
that trailing pattern to include this.

(cherry picked from commit 8469966710)
2025-06-23 14:13:30 -07:00
Josh Stone
af92bf6715 Update channel to beta 2025-06-23 14:13:20 -07:00
Josh Stone
36b5dd0de3 Update version placeholders 2025-06-23 14:13:20 -07: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
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