Commit graph

314469 commits

Author SHA1 Message Date
bors
2848c2ebe9 Auto merge of #147361 - saethlin:fallible-cycle-detection, r=oli-obk
Make inliner cycle detection a fallible process

The query `mir_callgraph_cyclic` is supposed to find _all_ callees that _may_ lead to a recursive call back to the given `LocalDefId`. But that query was built using a function which recurses through the call graph and tries to locally handle hitting the recursion limit during the walk. That is wrong. If the recursion limit is encountered, the set may be incomplete and thus useless. If we hit the recursion limit the only correct thing to do is bail.

Some benchmarks improve because for some functions we will bail out of the call graph walk faster. Some benchmarks regress because we do less inlining, but that is quite rare with the default recursion depth.

Originally I thought this might be a fix for https://github.com/rust-lang/rust/issues/131960, but it turns out that it is _actually_ a fix for https://github.com/rust-lang/rust/issues/146998.
2025-12-31 10:05:42 +00:00
bors
629b092f8f Auto merge of #150525 - weihanglo:update-cargo, r=weihanglo
Update cargo submodule

9 commits in 94c368ad2b9db0f0da5bdd8421cea13786ce4412..b54051b1505281ec7a45a250140a0ff25d33f319
2025-12-26 19:39:15 +0000 to 2025-12-30 20:35:52 +0000
- fix(log): add `dependencies` field to `UnitRegistered` (rust-lang/cargo#16448)
- Implement fine grain locking for `build-dir` (rust-lang/cargo#16155)
- feat(resolver): List features when no close match (rust-lang/cargo#16445)
- feat(report): new command `cargo report sessions` (rust-lang/cargo#16428)
- feat (patch): Display where the patch was defined in patch-related error messages (rust-lang/cargo#16407)
- test(build-rs): Reduce from 'build' to 'check' where possible (rust-lang/cargo#16444)
- feat(toml): TOML 1.1 parse support (rust-lang/cargo#16415)
- feat(report): support --manifest-path in `cargo report timings` (rust-lang/cargo#16441)
- fix(vendor): recursively filter git files in subdirectories (rust-lang/cargo#16439)

r? ghost
2025-12-31 06:49:05 +00:00
Ben Kimock
cee7f5ed31 Add a regression test 2025-12-30 22:21:03 -05:00
bors
ab32c26b49 Auto merge of #150516 - Ayush1325:uefi-fs-readdir-fix, r=jhpratt
std: sys: fs: uefi: Ignore "." and ".." when reading directory

- At least in Unix, "." and ".." are not returned as a directory entry. So ignore these in UEFI as well.
- Will also allow using the `remove_dir_all` implementation from `sys/fs/common`.
2025-12-31 03:13:08 +00:00
Ben Kimock
74e0a9aa81 Make inliner cycle detection a fallible process 2025-12-30 22:01:49 -05:00
bors
94f8f4083e Auto merge of #150526 - JonathanBrouwer:rollup-j9hy7fm, r=JonathanBrouwer
Rollup of 3 pull requests

Successful merges:

 - rust-lang/rust#150058 (Enable file locking support for Hurd)
 - rust-lang/rust#150420 (Do not spill operand debuginfo to stack for AArch64 SVE predicates `<vscale x N x i1>` where `N != 16`)
 - rust-lang/rust#150501 (Fix Typos in Platform Support Tables)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-30 22:40:16 +00:00
Jonathan Brouwer
342a1acb71
Rollup merge of #150501 - qb42:patch-1, r=workingjubilee
Fix Typos in Platform Support Tables

3 recently demoted targets had their entries moved to the tier 3 table without adjusting for the extra "host" column, this PR adds an empty column so they display correctly.

2 recently promoted targets had the opposite problem, also fixed.

While doing that I noticed that empty columns were represented inconsistently throughout the file so I normalized them all to be 2 spaces, which seemed to be the majority opinion (139 instances vs 5 for 1 space and 19 for 3 spaces).

Closes: rust-lang/rust#150499
2025-12-30 23:27:45 +01:00
Jonathan Brouwer
4b49c9f9d8
Rollup merge of #150420 - h3fang:sve-debuginfo-fix, r=workingjubilee
Do not spill operand debuginfo to stack for AArch64 SVE predicates `<vscale x N x i1>` where `N != 16`

This pull request tries to fix rust-lang/rust#150419.

The debuginfo for AArch64 SVE predicates `<vscale x N x i1>` where `N != 16` should be ignored by this [commit](https://github.com/rust-lang/rust/pull/143924/changes/89eea57594e3e1d8e618dd530ea1c8e7c9b4c7a4).

89eea57594/compiler/rustc_codegen_ssa/src/mir/debuginfo.rs (L438-L452)

But in line 446, the `marker_type.kind()` is `ty::Bool` instead of `ty::Slice`, so the code doesn't work as intended.

This pull request uses the [`Ty::scalable_vector_element_count_and_type`](https://github.com/rust-lang/rust/blob/main/compiler/rustc_middle/src/ty/sty.rs#L1272) method to fix the condition checks for  `<vscale x N x i1>` where `N != 16` and add a compiletest for this case.
2025-12-30 23:27:44 +01:00
Jonathan Brouwer
de16c1aa4c
Rollup merge of #150058 - Fabian-Gruenbichler:main, r=workingjubilee
Enable file locking support for Hurd

like Illumos (rust-lang/rust#148322) and aix (rust-lang/rust#148619), Hurd was missed when originally
introducing locking gates per target OS in rust-lang/rust#132977. building rustc on Hurd was
broken as a result since 1.91.
2025-12-30 23:27:44 +01:00
Weihang Lo
62d19109c8
Update cargo submodule 2025-12-30 17:05:59 -05:00
bors
0e89999425 Auto merge of #147247 - Qelxiros:vecdeque_splice, r=Mark-Simulacrum
add VecDeque::splice

Tracking issue: rust-lang/rust#146975
2025-12-30 19:18:37 +00:00
Ayush Singh
c2fc43c7a2
std: sys: fs: uefi: Ignore "." and ".." when reading directory
At least in Unix, "." and ".." are not returned as a directory entry. So
ignore these in UEFI as well.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-30 23:05:36 +05:30
bors
f0864c89ea Auto merge of #150512 - JonathanBrouwer:rollup-a3xpskp, r=JonathanBrouwer
Rollup of 2 pull requests

Successful merges:

 - rust-lang/rust#150422 (mir_build: Add a `SliceLenOp` enum for use by slice-length cases/tests)
 - rust-lang/rust#150509 (Adds a regression test for rust-lang/rust#137823)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-30 14:42:58 +00:00
Jonathan Brouwer
4b6f783e32
Rollup merge of #150509 - AprilNEA:fix-137823, r=petrochenkov
Adds a regression test for #137823

Adds a regression test for rust-lang/rust#137823. The test ensures that recursive generic function instantiation properly triggers the recursion limit error instead of ICE-ing with `type variables should not be hashed`.

Closes rust-lang/rust#137823
2025-12-30 15:06:17 +01:00
Jonathan Brouwer
e9d1e57767
Rollup merge of #150422 - Zalathar:slice-len, r=Nadrieril
mir_build: Add a `SliceLenOp` enum for use by slice-length cases/tests

The main change in this PR introduces a `SliceLenOp` enum, to be used by the enum variants for slice-length tests in match lowering.

Slice-length tests must distinguish between `==` tests, and `>=` tests. The existing code represents this distinction with either a boolean (in `TestableCase`) or a `mir::BinOp` (in `TestKind`). Using a dedicated enum makes it easier to see what the two possible values represent.

This PR also includes a few relevant cleanups that would otherwise conflict.

r? Nadrieril
2025-12-30 15:06:16 +01:00
AprilNEA
36f86f9e6a
Adds a regression test for 137823 2025-12-30 19:52:02 +08:00
bors
15f7c553a3 Auto merge of #150503 - JonathanBrouwer:rollup-15nukr5, r=JonathanBrouwer
Rollup of 2 pull requests

Successful merges:

 - rust-lang/rust#150239 (Simplify `TypeFreshener` methods.)
 - rust-lang/rust#150344 (Cleanup linked list)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-30 11:20:56 +00:00
Jonathan Brouwer
596e1e3f88
Rollup merge of #150344 - hkBst:cleanup-linked-list, r=jhpratt
Cleanup linked list

 - Replaces some checked_sub().unwrap_or(0) with saturating_sub().
 - Replaces NonNull::from(Box::leak(node)) with Box::into_non_null(node)
2025-12-30 10:42:28 +01:00
Jonathan Brouwer
be715d4685
Rollup merge of #150239 - nnethercote:simplify-TypeFreshener-methods, r=lcnr
Simplify `TypeFreshener` methods.

`freshen_{ty,const}` take a `Result` and just do a fold if the input is `Ok`. It's simpler to do those folds at the call site, and only call `freshen_{ty,const}` in the `Err` case. That way we can also avoid useless fold operations on the results of `new_{int,uint,float}`.

Also, make some `bug!` calls more concise.

r? `@lcnr`
2025-12-30 10:42:27 +01:00
bors
d465f99043 Auto merge of #150500 - jhpratt:rollup-ei77kqi, r=jhpratt
Rollup of 3 pull requests

Successful merges:

 - rust-lang/rust#146792 (Implement `TryFrom<char>` for `usize`.)
 - rust-lang/rust#150484 (Mark set_times as unavailable for RTEMS target)
 - rust-lang/rust#150498 (mir_build: Remove several remnants of `#![feature(inline_const_pat)]`)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-30 08:02:56 +00:00
qb42
841091b846
Remove extra columns from promoted targets 2025-12-30 06:44:28 +00:00
qb42
e330a3fab1
Make empty columns consistent 2025-12-30 06:26:01 +00:00
qb42
8cc5dc374b
Add missing columns to demoted targets 2025-12-30 06:13:43 +00:00
Jacob Pratt
50e6224d29
Rollup merge of #150498 - Zalathar:no-const-pat, r=BoxyUwU
mir_build: Remove several remnants of `#![feature(inline_const_pat)]`

This PR cleans up some THIR-related code that was only needed for inline `const { .. }` blocks in patterns. The `inline_const_pat` feature was removed in https://github.com/rust-lang/rust/pull/138492 due to implementation concerns.

I considered retaining the code for preserving `ExpandedConstant` for range endpoints, but ultimately decided to remove that too, because I found it very awkward to document an edge case that is currently not needed by any subsequent code.

With this PR, `is_const_pat_that_looks_like_binding` is the only function that meaningfully consumes `thir::PatKind::ExpandedConst`.
2025-12-30 01:10:29 -05:00
Jacob Pratt
de21e04ec7
Rollup merge of #150484 - thesummer:rtems-fix-utimesat, r=jhpratt
Mark set_times as unavailable for RTEMS target

This PR just updates one of the config switches to exclude `utimesat` for the RTEMS target.
This currently creates undefined reference errors when building the target.
With this fix applied it also needs a fix in libc (see https://github.com/rust-lang/libc/pull/4875) which will hopefully be available in release 0.2.179.
2025-12-30 01:10:29 -05:00
Jacob Pratt
09baabc63f
Rollup merge of #146792 - bjoernager:usize-try-from-char, r=dtolnay
Implement `TryFrom<char>` for `usize`.

Feature gate: `usize_try_from_char`.

This PR implements `TryFrom<char>` for `usize`.

`usize` is currently the only, unsigned, integral type to not implement `TryFrom<char>`. Technically, this conversion is trivial and can already be expressed with some indirection.

I think it useful to be able to describe this set of types with this interface.
2025-12-30 01:10:28 -05:00
bors
d874dce125 Auto merge of #150386 - saethlin:no-const-assert-likely, r=tgross35
Remove the explicit branch hint from const_panic

This was asked for in PR review for equivalence with `assert!`, but we don't need likely/unlikely intrinsics here (and indeed they are a bit of an antipattern), because codegen knows about the pattern that `assert!` produces where only one target of a SwitchInt leads to a block terminated by a `#[cold]` call. All our panic entrypoints are `#[cold]`.

`assert!` does not use the likely/unlikely intrinsics, maybe it did in the past.

So the intrinsic call in `const_assert!` should be completely unnecessary. But currently it isn't, because `const_panic!` stamps out a runtime wrapper for its entrypoint which is not given `#[inline]`, citing compile times. It's not obvious to me why not using `#[inline]` would even be good in this case.

I think the runtime wrapper should have `#[inline]` or `#[cold]`, so I'm going to do 3 perf experiments here.
Just changing `const_assert!`: https://perf.rust-lang.org/compare.html?start=fabece9e9491d0a3c3655dba488881968b7c5f7a&end=f6b082cfcf880ad80b33523d5047c11654d907a8&stat=instructions:u
Also adding `#[inline]` to `const_panic!`'s runtime wrapper: https://perf.rust-lang.org/compare.html?start=fabece9e9491d0a3c3655dba488881968b7c5f7a&end=f467cc7e49b74b47da0e2cde49fc1a3140e00ff6&stat=instructions:u
Also adding `#[cold]` to `const_panic!`'s runtime wrapper: https://perf.rust-lang.org/compare.html?start=2e854a9344154564259de51385e9ec9506c0f3b7&end=fd8e098558ff08ac002b05ff78e9f91ffa6f3738&stat=instructions:u

The previous comment indicated perf would be worse with `#[inline]` on the runtime branch, but the results in this PR show that it is more mixed, and net positive. And in fact, the only regression in serde seems to be because we created a very tiny additional amount of codegen, but pushed the size of the second CGU just high enough that we no longer merge all CGUs together. So now serde (in debug with incremental disabled) has 2 CGUs instead of 1. If we just so happened to be still below the threshold where the CGUs don't merge, adding `#[inline]` would have been nearly all improvements.
2025-12-30 04:45:36 +00:00
Zalathar
89f7d70045 Remove several remnants of #![feature(inline_const_pat)] 2025-12-30 14:29:35 +11:00
Zalathar
b3c26f10c8 Extract shared helper function is_const_pat_that_looks_like_binding 2025-12-30 14:16:59 +11:00
bors
b082bd59d2 Auto merge of #150496 - JonathanBrouwer:rollup-va9ofgq, r=JonathanBrouwer
Rollup of 3 pull requests

Successful merges:

 - rust-lang/rust#150396 ([rustdoc] If line number setting is disabled, do not make line numbers take space)
 - rust-lang/rust#150489 (Disable debuginfo when building GCC)
 - rust-lang/rust#150490 (Specify bug URL when building GCC)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-30 01:26:01 +00:00
Jonathan Brouwer
18b3b66c01
Rollup merge of #150490 - Kobzol:gcc-bug-url, r=antoyo
Specify bug URL when building GCC

r? `@antoyo`
2025-12-30 02:07:08 +01:00
Jonathan Brouwer
1953001256
Rollup merge of #150489 - Kobzol:gcc-no-debuginfo, r=antoyo
Disable debuginfo when building GCC

To reduce size of libgccjit.so from ~400 MiB to ~50 MiB.

r? `@antoyo`
2025-12-30 02:07:08 +01:00
Jonathan Brouwer
71c248a2e1
Rollup merge of #150396 - GuillaumeGomez:fix-line-numbers-hidden, r=lolbinarycat
[rustdoc] If line number setting is disabled, do not make line numbers take space

While working on https://github.com/rust-lang/rust/pull/150395, I realized that when enabled then disabled the "show line numbers" setting, instead of looking like initially:

<img width="904" height="148" alt="Screenshot From 2025-12-26 16-51-44" src="https://github.com/user-attachments/assets/a24df2f2-61be-4db5-b60f-519b35425fd2" />

The "space" taken by line numbers was still there:

<img width="904" height="148" alt="Screenshot From 2025-12-26 16-51-41" src="https://github.com/user-attachments/assets/b44af75d-52a4-4401-98e4-602b16bf6b9b" />

This PR fixes it.

First commit cleans up the `utils.goml` file a bit, I think I'll do more cleanup because switching the settings without reloading the page should make GUI tests a bit faster.

r? `@yotamofek`
2025-12-30 02:07:07 +01:00
bors
67944d6bec Auto merge of #149694 - lolbinarycat:alloc-extend-slice-of-str-spec, r=Mark-Simulacrum
alloc: specialize String::extend for slices of str

Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from rust-lang/rust#148604, so I thought it was worth submitting to see.
2025-12-29 22:07:30 +00:00
Marijn Schouten
eea3d794ff LinkedList: use Box::into_non_null_with_allocator 2025-12-29 19:08:34 +00:00
bors
56f24e00c6 Auto merge of #150488 - JonathanBrouwer:rollup-9ugn7py, r=JonathanBrouwer
Rollup of 2 pull requests

Successful merges:

 - rust-lang/rust#150394 (Accommodate LLVM PassPlugin rename)
 - rust-lang/rust#150483 (miri subtree update)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-29 18:50:18 +00:00
Jeremy Smart
0763954226
add VecDeque::splice 2025-12-29 13:25:56 -05:00
Jakub Beránek
0cc8608493
Specify bug URL when building GCC 2025-12-29 18:06:48 +01:00
Jakub Beránek
1313e958c8
Disable debuginfo when building GCC 2025-12-29 17:49:45 +01:00
Jonathan Brouwer
2c89d1c2a0
Rollup merge of #150483 - RalfJung:miri, r=RalfJung
miri subtree update

Subtree update of `miri` to 70e2451400.

Created using https://github.com/rust-lang/josh-sync.

r? `@ghost`
2025-12-29 17:17:57 +01:00
Jonathan Brouwer
122f02ad02
Rollup merge of #150394 - DKLoehr:passplugin, r=nikic
Accommodate LLVM PassPlugin rename

LLVM [recently moved](https://github.com/llvm/llvm-project/pull/173279) their `PassPlugin` files to a new folder. This PR updates our `PassWrapper` to point to the new location.
2025-12-29 17:17:56 +01:00
Ben Kimock
315646a7a0 Remove the explicit branch hint from const_panic 2025-12-29 10:30:02 -05:00
bors
8cd58dd99d Auto merge of #148332 - jyn514:cargo-deny-warnings, r=Kobzol
bootstrap: Use cargo's `build.warnings=deny` rather than -Dwarnings

This has two major advantages. First, it makes us less dependent on the rustc shim, which is nice but not super important. More importantly, it gives us much nicer caching properties.

Previously, `x build --warnings warn && x build --warnings deny` would rebuild all of bootstrap, and if there were any warnings emitted on the last build of the compiler, they would *not* fail the build, because cargo would cache the output rather than rerunning the shim.

After this change, bootstrap rebuilds instantly, and cargo knows that it should fail the build but *without* invalidating the cache.

<details><summary>An example of rebuilding bootstrap after a switch from warn->deny:</summary>

```
INFO: Downloading and building bootstrap before processing --help command.
      See src/bootstrap/README.md for help with common commands.
Building bootstrap
   Compiling bootstrap v0.0.0 (/Users/jyn/src/ferrocene3/src/bootstrap)
warning: unused variable: `x`
    --> src/bootstrap/src/core/builder/mod.rs:1792:13
     |
1792 |         let x: ();
     |             ^
     |
     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
help: if this is intentional, prefix it with an underscore
     |
1792 |         let _x: ();
     |             +
help: you might have meant to pattern match on the similarly named constant `_`
     |
1792 -         let x: ();
1792 +         let utils::render_tests::_: ();
     |

warning: `bootstrap` (lib) generated 1 warning (run `cargo fix --lib -p bootstrap` to apply 1 suggestion)
    Finished `dev` profile [unoptimized] target(s) in 5.14s
error: warnings are denied by `build.warnings` configuration
failed to run: /Users/jyn/src/ferrocene3/build/aarch64-apple-darwin/stage0/bin/cargo build --jobs=default --manifest-path /Users/jyn/src/ferrocene3/src/bootstrap/Cargo.toml -Zroot-dir=/Users/jyn/src/ferrocene3 -Zwarnings
```

</details>

building the compiler from scratch with `deny`: https://gist.github.com/jyn514/493ed26c2aa6f61bf47c21e75efa2175

<details><summary>and rebuilding the compiler after switching from deny->warn (note that it reuses the whole cache, there are no invalidations):</summary>

```
$ x c compiler
Building bootstrap
    Finished `dev` profile [unoptimized] target(s) in 0.15s
Checking stage1 compiler artifacts{rustc-main, rustc_abi, rustc_arena, rustc_ast, rustc_ast_ir, rustc_ast_lowering, rustc_ast_passes, rustc_ast_pretty, rustc_attr_parsing, rustc_baked_icu_data, rustc_borrowck, rustc_builtin_macros, rustc_codegen_llvm, rustc_codegen_ssa, rustc_const_eval, rustc_data_structures, rustc_driver, rustc_driver_impl, rustc_error_codes, rustc_error_messages, rustc_errors, rustc_expand, rustc_feature, rustc_fluent_macro, rustc_fs_util, rustc_graphviz, rustc_hashes, rustc_hir, rustc_hir_analysis, rustc_hir_id, rustc_hir_pretty, rustc_hir_typeck, rustc_incremental, rustc_index, rustc_index_macros, rustc_infer, rustc_interface, rustc_lexer, rustc_lint, rustc_lint_defs, rustc_llvm, rustc_log, rustc_macros, rustc_metadata, rustc_middle, rustc_mir_build, rustc_mir_dataflow, rustc_mir_transform, rustc_monomorphize, rustc_next_trait_solver, rustc_parse, rustc_parse_format, rustc_passes, rustc_pattern_analysis, rustc_privacy, rustc_proc_macro, rustc_public, rustc_public_bridge, rustc_query_impl, rustc_query_system, rustc_resolve, rustc_sanitizers, rustc_serialize, rustc_session, rustc_span, rustc_symbol_mangling, rustc_target, rustc_thread_pool, rustc_trait_selection, rustc_traits, rustc_transmute, rustc_ty_utils, rustc_type_ir, rustc_type_ir_macros, rustc_windows_rc} (stage0 -> stage1, aarch64-apple-darwin)
warning: function `foo` is never used
  --> compiler/rustc_hashes/src/lib.rs:16:4
   |
16 | fn foo() {}
   |    ^^^
   |
   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default

warning: `rustc_hashes` (lib) generated 1 warning
    Finished `release` profile [optimized + debuginfo] target(s) in 0.53s
Build completed successfully in 0:00:08
```

</details>

thanks to `@epage` for the help finding this!

r? bootstrap
2025-12-29 15:29:00 +00:00
Jan Sommer
cfd859a99f Mark set_times as unavailable for RTEMS target 2025-12-29 14:32:55 +01:00
Ralf Jung
d1c8e9342c
Merge pull request #4796 from RalfJung/data-race-ice
fix ICE for particular data race situations
2025-12-29 12:23:47 +00:00
bors
7e7280f24b Auto merge of #150481 - matthiaskrgr:rollup-f5b2wkm, r=matthiaskrgr
Rollup of 6 pull requests

Successful merges:

 - rust-lang/rust#150108 (Offload: Build offload as a single Step)
 - rust-lang/rust#150262 (slice iter cleanup: replace checked_sub with saturating_sub)
 - rust-lang/rust#150427 (add has_offload/needs-offload to the test infra)
 - rust-lang/rust#150458 (fix running stdlib doctests in Miri in CI)
 - rust-lang/rust#150477 (Fix enum variant suggestion consuming trailing parenthesis)
 - rust-lang/rust#150478 (Fix new bors config)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-29 12:11:08 +00:00
Matthias Krüger
3748bdef2e
Rollup merge of #150478 - Kobzol:bors-config, r=jieyouxu
Fix new bors config

I added the root config under `[labels]` by accident, so it failed to be deserialized by bors.
2025-12-29 12:59:12 +01:00
Matthias Krüger
72f53d86f4
Rollup merge of #150477 - el-ev:issue150459, r=Urgau
Fix enum variant suggestion consuming trailing parenthesis

- Closes rust-lang/rust#150459

Previously the logic incorrectly assumed the variant itself was the function being called when the parent node was a function all. This change adds a check to ensure the replacement span is only expanded if the path expression is actually the callee of the parent expression.
2025-12-29 12:59:11 +01:00
Matthias Krüger
fc8230ffd9
Rollup merge of #150458 - RalfJung:miri-doctests, r=bjorn3
fix running stdlib doctests in Miri in CI

r? `@bjorn3`
2025-12-29 12:59:11 +01:00
Matthias Krüger
19907e67d7
Rollup merge of #150427 - ZuseZ4:offload-testinfra, r=jieyouxu
add has_offload/needs-offload to the test infra

unblocks: https://github.com/rust-lang/rust/pull/150426

Mostly copied from https://github.com/rust-lang/rust/pull/131044
lmk if some of these changes should land separately?

r? jieyouxu
2025-12-29 12:59:10 +01:00