Commit Graph

285202 Commits

Author SHA1 Message Date
Matthias Krüger b5ad69bb93 Rollup merge of #139057 - yotamofek:pr/slice-contains, r=wesleywiser
use `slice::contains` where applicable

Applies the [`manual_contains`](https://rust-lang.github.io/rust-clippy/master/index.html#manual_contains) clippy lint, plus some small drive-bys.
2025-03-29 11:43:48 +01:00
Matthias Krüger 0e722cce62 Rollup merge of #139056 - yotamofek:pr/smir/try_fold, r=scottmcm
use `try_fold` instead of `fold`

Small cleanup, applies the [`manual_try_fold`](https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold) clippy lint.
2025-03-29 11:43:47 +01:00
Matthias Krüger 111351fcc1 Rollup merge of #138988 - madsmtm:internal-weak-macro-syntax, r=ibraheemdev
Change the syntax of the internal `weak!` macro

Change the syntax to include parameter names and a trailing semicolon.

Motivation:
- Mirror the `syscall!` macro.
- Allow rustfmt to format it (when wrapped in parentheses, and when not inside `cfg_if!`).
- For better documentation (having the parameter names available in the source code is a bit nicer).
- Allow a future improvement to this macro where we can sometimes use the symbol directly when it's statically known to be available (and thus need the parameter names to be available), see https://github.com/rust-lang/rust/pull/136868.

r? libs
2025-03-29 11:43:46 +01:00
Matthias Krüger c82b88b009 Rollup merge of #138757 - rust-wasi-web:wasi-thread-stack-size, r=alexcrichton
wasm: increase default thread stack size to 1 MB

The default stack size for the [main thread is 1 MB as specified by linker options](https://github.com/rust-lang/rust/blob/38cf49dde8a5b0b284bb6dffd423d223c9f8f7a3/compiler/rustc_target/src/spec/base/wasm.rs#L14).
However, the default stack size for threads was only 64 kB.

This is surprisingly small and thus we increase it to 1 MB to match the main thread.
2025-03-29 11:43:46 +01:00
Matthias Krüger 240a4da396 Rollup merge of #138692 - jieyouxu:reject-bool-lit-rev-names, r=wesleywiser
Reject `{true,false}` as revision names

Because they would imply `--cfg={true,false}` otherwise, and the test writer has to use `cfg(r#true)` and `cfg(r#false)` in the test.

Closes #138663.
2025-03-29 11:43:45 +01:00
bors 928468c47c Auto merge of #139074 - BoxyUwU:bump_1_88, r=BoxyUwU
Bump to 1.88

https://forge.rust-lang.org/release/process.html#bump-the-stable-version-number-friday-the-week-before

r? ghost
2025-03-29 05:42:07 +00:00
bors 2848101ed5 Auto merge of #138784 - madsmtm:bootstrap-bump-cc-cmake, r=jieyouxu
Bump boostrap `cc` to 1.2.17 and `cmake` to 0.1.54

The `cc` version in `bootstrap` was reverted down to 1.1.22 in https://github.com/rust-lang/rust/pull/137460 (previously at 1.2.0). The offending issue has since then been resolved in https://github.com/rust-lang/cc-rs/pull/1413, and a new version of `cc` has been released in https://github.com/rust-lang/cc-rs/pull/1435, so let's try to update the version again.

See [the `cc-rs` changelog](https://github.com/rust-lang/cc-rs/blob/d9dd20e376368c7535f6ef89b809098f5f203c1a/CHANGELOG.md) and [the `cmake-rs` changelog](https://github.com/rust-lang/cmake-rs/blob/fd56c5a6b4ecda8815c863eb5b12d7b3f0391197/CHANGELOG.md) for details on what has changed here.

r? jieyouxu who tried this last in https://github.com/rust-lang/rust/pull/137022.
`@rustbot` label T-bootstrap
try-job: *apple*
2025-03-29 00:03:11 +00:00
bors 920d95eaf2 Auto merge of #139085 - matthiaskrgr:rollup-3q2peol, r=matthiaskrgr
Rollup of 8 pull requests

Successful merges:

 - #138976 (Explain one-past-the-end pointer in std library)
 - #139052 (Put pin!() tests in the right file.)
 - #139058 (Fix formatting nit in process.rs)
 - #139063 (Fix TAIT & ATPIT feature gating in the presence of anon consts)
 - #139065 (Miri subtree update)
 - #139069 (`io::Take`: avoid new `BorrowedBuf` creation in some case)
 - #139075 (Do not treat lifetimes from parent items as influencing child items)
 - #139079 (tracking autodiff files via triagebot.toml)

Failed merges:

 - #139044 (bootstrap: Avoid cloning `change-id` list)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-03-28 20:56:37 +00:00
Matthias Krüger 20f2655258 Rollup merge of #139079 - EnzymeAD:autodfff-triagebot, r=Noratrieb
tracking autodiff files via triagebot.toml

r? `@oli-obk`

Tracking:

- https://github.com/rust-lang/rust/issues/124509
2025-03-28 21:18:32 +01:00
Matthias Krüger 3e968c7e9f Rollup merge of #139075 - oli-obk:resolver-item-lifetime, r=compiler-errors
Do not treat lifetimes from parent items as influencing child items

```rust
struct A;
impl Bar<'static> for A {
    const STATIC: &str = "";
    //            ^ no future incompat warning
}
```

has no future incompat warning, because there is no ambiguity. But

```rust
struct C;
impl Bar<'_> for C {
//       ^^ this lifeimte
    const STATIC: &'static str = {
        struct B;
        impl Bar<'static> for B {
            const STATIC: &str = "";
            // causes     ^ to emit a future incompat warning
        }
        ""
    };
}
```

had one before this PR, because the impl for `B` (which is just a copy of `A`) thought it was influenced by a lifetime on the impl for `C`.

I double checked all other `lifetime_ribs` iterations and all of them do check for `Item` boundaries. This feels very fragile tho, and ~~I think we should do not even be able to see ribs from parent items, but that's a different refactoring that I'd rather not do at the same time as a bugfix~~. EDIT: ah nevermind, this is needed for improving diagnostics like "use of undeclared lifetime" being "can't use generic parameters from outer item" instead.

r? `@compiler-errors`
2025-03-28 21:18:32 +01:00
Matthias Krüger 7c0a14f030 Rollup merge of #139069 - a1phyr:better_take, r=joboet
`io::Take`: avoid new `BorrowedBuf` creation in some case

If `self.limit == buf.capacity()`, doing the whole `BorrowedBuf` dance is not necessary.
2025-03-28 21:18:31 +01:00
Matthias Krüger b6699318fa Rollup merge of #139065 - RalfJung:miri-sync, r=RalfJung
Miri subtree update

r? `@ghost`
2025-03-28 21:18:30 +01:00
Matthias Krüger 52aed95060 Rollup merge of #139063 - fmease:fix-tait-atpit-gating, r=oli-obk
Fix TAIT & ATPIT feature gating in the presence of anon consts

Fixes #139055 (https://github.com/rust-lang/rust/issues/119924#issuecomment-1928659690).

r? oli-obk or anybody else
2025-03-28 21:18:30 +01:00
Matthias Krüger 660e8633f3 Rollup merge of #139058 - barafael:patch-1, r=joboet
Fix formatting nit in process.rs

Minor formatting issue in `process.rs`.
2025-03-28 21:18:29 +01:00
Matthias Krüger 3060c77815 Rollup merge of #139052 - m-ou-se:pin-macro-tests, r=joboet
Put pin!() tests in the right file.

In #138717, these tests were put in `tests/pin.rs`, but they should go in `tests/pin_macro.rs`.

r? `@jdonszelmann`
2025-03-28 21:18:28 +01:00
Matthias Krüger e82557e9ad Rollup merge of #138976 - xizheyin:issue-138969, r=RalfJung
Explain one-past-the-end pointer in std library

Closing #138969

r? libs
2025-03-28 21:18:27 +01:00
Manuel Drehwald e6a2c29bc4 tracking autodiff files via triagebot.toml 2025-03-28 14:15:08 -04:00
León Orell Valerian Liehr 7a295d1be0 Fix TAIT & ATPIT feature gating in the presence of anon consts 2025-03-28 18:15:23 +01:00
Oli Scherer dabee5d563 Do not treat lifetimes from parent items as influencing child items 2025-03-28 17:06:00 +00:00
Boxy 9300fa19b7 Bump to 1.88.0 2025-03-28 16:53:17 +00:00
bors 19f42cb9bb Auto merge of #139054 - matthiaskrgr:rollup-2bk2fb4, r=matthiaskrgr
Rollup of 7 pull requests

Successful merges:

 - #137889 (update outdated doc with new example)
 - #138104 (Greatly simplify doctest parsing and information extraction)
 - #138678 (rustc_resolve: fix instability in lib.rmeta contents)
 - #138986 (feat(config): Add ChangeId enum for suppressing warnings)
 - #139038 (Update target maintainers for thumb targets to reflect new REWG Arm team name)
 - #139045 (bootstrap: update `test_find` test)
 - #139047 (Remove ScopeDepth)

Failed merges:

 - #139044 (bootstrap: Avoid cloning `change-id` list)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-03-28 16:37:12 +00:00
Benoît du Garreau 9055765ce1 io::Take: avoid new BorrowedBuf creation in some case 2025-03-28 16:36:49 +01:00
xizheyin 074edbd89c std: Explain range follows standard half-open range in offset
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
2025-03-28 22:28:48 +08:00
Ralf Jung 7310925076 update lockfile 2025-03-28 15:28:14 +01:00
Ralf Jung a8616f2115 Merge pull request #4241 from RalfJung/mangle_internal_symbol_cache
cache mangle_internal_symbol results
2025-03-28 13:42:50 +00:00
Rafael Bachmann 0f418520c6 Fix formatting nit in process.rs 2025-03-28 13:22:09 +01:00
Yotam Ofek 9ef35ddc0c use slice::contains where applicable 2025-03-28 12:21:21 +00:00
Yotam Ofek 827cb1b2a7 use try_fold instead of fold 2025-03-28 12:14:09 +00:00
Matthias Krüger 310bebc487 Rollup merge of #139047 - m-ou-se:remove-scope-depth, r=oli-obk
Remove ScopeDepth

The scope depth was tracked, but never seemed to be used for anything.

Every single place that used `(Scope, ScopeDepth)`, matched it on `(p, _)`.
2025-03-28 12:59:58 +01:00
Matthias Krüger ea56904feb Rollup merge of #139045 - onur-ozkan:less-verbose-bootstrap-test, r=Kobzol
bootstrap: update `test_find` test

`cc::Build::get_archiver` is noisy on the `arm-linux-androideabi` target and constantly printing `llvm-ar --version` output during bootstrap tests on all platforms.
2025-03-28 12:59:58 +01:00
Matthias Krüger 5261a0aedf Rollup merge of #139038 - adamgreig:thumb-target-maintainers, r=Noratrieb
Update target maintainers for thumb targets to reflect new REWG Arm team name

Closes #139027

The name of the team responsible for these targets has changed as the team was merged with other Arm-related teams (see https://github.com/rust-embedded/wg/pull/818). The link gives an up-to-date list of github usernames that can be pinged, whereas the old email address is not very actively maintained or tracked.
2025-03-28 12:59:57 +01:00
Matthias Krüger 60833b1475 Rollup merge of #138986 - Shourya742:2025-03-25-add-ignore-to-change-id, r=Kobzol
feat(config): Add ChangeId enum for suppressing warnings

closes: #138925
2025-03-28 12:59:56 +01:00
Matthias Krüger bdc5adfe78 Rollup merge of #138678 - durin42:rmeta-stability, r=fmease
rustc_resolve: fix instability in lib.rmeta contents

rust-lang/rust@23032f31c9 accidentally introduced some nondeterminism in the ordering of lib.rmeta files, which we caught in our bazel-based builds only recently due to being further behind than normal. In my testing, this fixes the issue.
2025-03-28 12:59:55 +01:00
Matthias Krüger ad87732cae Rollup merge of #138104 - GuillaumeGomez:simplify-doctest-parsing, r=fmease
Greatly simplify doctest parsing and information extraction

The original process was pretty terrible, as it tried to extract information such as attributes by performing matches over tokens like `#!`, which doesn't work very well considering you can have `#   ! [`, which is valid.

Also, it now does it in one pass: if the parser is happy, then we try to extract information, otherwise we return early.

r? `@fmease`
2025-03-28 12:59:55 +01:00
Matthias Krüger 9597bf72dd Rollup merge of #137889 - mu001999-contrib:update-doc, r=wesleywiser
update outdated doc with new example

update the illegal definition example because we can compile `struct Ref<'a, T> { x: &'a T }` ([play](https://play.rust-lang.org/?version=stable&mode=debug&edition=2024&gist=2eb2f8800d423c316b545c864623ae16))
2025-03-28 12:59:54 +01:00
Ralf Jung 024c8c3063 cache mangle_internal_symbol results 2025-03-28 12:07:33 +01:00
bors 2a06022951 Auto merge of #138503 - bjorn3:string_merging, r=tmiasko
Avoid wrapping constant allocations in packed structs when not necessary

This way LLVM will set the string merging flag if the alloc is a nul terminated string, reducing binary sizes.

try-job: armhf-gnu
2025-03-28 10:18:32 +00:00
Guillaume Gomez 87d524bef6 Update coverage-run-rustdoc output 2025-03-28 10:35:53 +01:00
bjorn3 5c82a59bd3 Add test and comment 2025-03-28 09:19:57 +00:00
bjorn3 a5fa12b6b9 Avoid wrapping constant allocations in packed structs when not necessary
This way LLVM will set the string merging flag if the alloc is a nul
terminated string, reducing binary sizes.
2025-03-28 09:19:57 +00:00
Mara Bos c41476034d Put pin!() tests in the right file. 2025-03-28 10:18:04 +01:00
Mara Bos deeac1c588 Remove outdated comment. 2025-03-28 08:36:16 +01:00
Mara Bos 3a9a5770ef Remove ScopeDepth entirely.
The scope depth was tracked, but never actually used for anything.
2025-03-28 08:31:47 +01:00
onur-ozkan d5f7e71d5c bootstrap: update test_find test
`cc::Build::get_archiver` is noisy on the `arm-linux-androideabi` target and
constantly printing `llvm-ar --version` output during bootstrap tests on all platforms.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-03-28 10:15:51 +03:00
bors e77a8f439c Auto merge of #139037 - jhpratt:rollup-4c74y8a, r=jhpratt
Rollup of 6 pull requests

Successful merges:

 - #138720 (Specify a concrete stack size in channel tests)
 - #139010 (Improve `xcrun` error handling)
 - #139021 (std: get rid of pre-Vista fallback code)
 - #139025 (Do not trim paths in MIR validator)
 - #139026 (Use `abs_diff` where applicable)
 - #139030 (saethlin goes on vacation)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-03-28 06:28:48 +00:00
bors 3f690c2257 Auto merge of #138965 - nnethercote:less-kw-Empty-hir-Lifetime, r=lcnr
Remove `kw::Empty` uses from `hir::Lifetime::ident`

`hir::Lifetime::ident` is sometimes set to `kw::Empty` and it's really confusing. This PR stops that. Helps with #137978.

r? `@lcnr`
2025-03-28 03:20:06 +00:00
Mads Marquart 7a6a3241ca bootstrap: Update download-ci-llvm-stamp
This PR makes a fairly large version update to CMake and cc, so it is
likely that LLVM is built differently.
2025-03-28 04:15:41 +01:00
Mads Marquart 011eabd690 bootstrap: Override CMAKE_OSX_SYSROOT when building compiler-rt
Similarly to what was previously done for the `llvm` step.
2025-03-28 04:15:41 +01:00
Mads Marquart e8704e899c bootstrap: Set CMAKE_SYSTEM_NAME=Darwin on Apple platforms
compiler-rt's CMake setup seems to have special logic for Apple
platforms that works poorly when this is not set.
2025-03-28 04:15:41 +01:00
Mads Marquart a9cb15d793 bootstrap: Fix CMAKE_OSX_ARCHITECTURES on all Apple platforms 2025-03-28 04:15:41 +01:00