Skip to content

Rollup of 8 pull requests#152282

Merged
rust-bors[bot] merged 21 commits intorust-lang:mainfrom
JonathanBrouwer:rollup-EaeQJAR
Feb 7, 2026
Merged

Rollup of 8 pull requests#152282
rust-bors[bot] merged 21 commits intorust-lang:mainfrom
JonathanBrouwer:rollup-EaeQJAR

Conversation

@JonathanBrouwer
Copy link
Contributor

Successful merges:

r? @ghost

Create a similar rollup

tgross35 and others added 21 commits January 26, 2026 13:43
`cold_path` has been around unstably for a while and is a rather useful
tool to have. It does what it is supposed to and there are no known
remaining issues, so stabilize it here (including const).

Newly stable API:

    // in core::hint
    pub const fn cold_path();

I have opted to exclude `likely` and `unlikely` for now since they have
had some concerns about ease of use that `cold_path` doesn't suffer
from. `cold_path` is also significantly more flexible; in addition to
working with boolean `if` conditions, it can be used in `match` arms,
`if let`, closures, and other control flow blocks. `likely` and
`unlikely` are also possible to implement in user code via `cold_path`,
if desired.
and deprecate fetch_update starting 1.99.0
We only run LLDB 1500 in CI. Any test with a min-lldb-version above that
is currently ignored. It's not clear any of these tests actually work
with that LLDB version, and they definitely don't work on LLDB ~2100.
So, ignore them until we fix debuginfo testing.
Because `Cache` is unhelpfully vague.
stabilizes `core::range::RangeInclusive`
and `core::range::RangeInclusiveIter`
and the `core::range` module
…jhpratt

Stabilize `atomic_try_update`and deprecate `fetch_update` starting 1.99.0

Tracking issue: rust-lang#135894
FCP completed: rust-lang#135894 (comment)

~1.96.0 was chosen because I don't think the remaining month until 1.93.0 becomes beta is enough for the FCP to finish and this to get merged, so 1.94.0 + a couple of versions of leeway: rust-lang#135894 (comment)

1.99 suggested in rust-lang#148590 (comment)

Closes rust-lang#135894
…, r=tgross35

Stabilize new inclusive range type and iterator type

Part 1 of stabilizing the new range types for rust-lang#125687

stabilizes `core::range::RangeInclusive` and `core::range::RangeInclusiveIter`. Newly stable API:

```rust
// in core and std
pub mod range;

// in core::range

pub struct RangeInclusive<Idx> {
    pub start: Idx,
    pub last: Idx,
}

impl<Idx: fmt::Debug> fmt::Debug for RangeInclusive<Idx> { /* ... */ }

impl<Idx: PartialOrd<Idx>> RangeInclusive<Idx> {
    pub const fn contains<U>(&self, item: &U) -> bool
    where
        Idx: [const] PartialOrd<U>,
        U: ?Sized + [const] PartialOrd<Idx>;

    pub const fn is_empty(&self) -> bool
    where
        Idx: [const] PartialOrd;
}

impl<Idx: Step> RangeInclusive<Idx> {
    pub fn iter(&self) -> RangeInclusiveIter<Idx>;
}

impl<T> const RangeBounds<T> for RangeInclusive<T> { /* ... */ }
impl<T> const RangeBounds<T> for RangeInclusive<&T> { /* ... */ }

impl<T> const From<RangeInclusive<T>> for legacy::RangeInclusive<T> { /* ... */ }
impl<T> const From<legacy::RangeInclusive<T>> for RangeInclusive<T> { /* ... */ }

pub struct RangeInclusiveIter<A>(/* ... */);

impl<A: Step> RangeInclusiveIter<A> {
    pub fn remainder(self) -> Option<RangeInclusive<A>>;
}

impl<A: Step> Iterator for RangeInclusiveIter<A> {
    type Item = A;
    /* ... */
}

impl<A: Step> DoubleEndedIterator for RangeInclusiveIter<A> { /* ... */ }
impl<A: Step> FusedIterator for RangeInclusiveIter<A> { }
impl<A: Step> IntoIterator for RangeInclusive<A> {
    type Item = A;
    type IntoIter = RangeInclusiveIter<A>;
    /* ... */
}

impl ExactSizeIterator for RangeInclusiveIter<u8> { }
impl ExactSizeIterator for RangeInclusiveIter<i8> { }

unsafe impl<T> const SliceIndex<[T]> for range::RangeInclusive<usize> {
    type Output = [T];
    /* ... */
}
unsafe impl const SliceIndex<str> for range::RangeInclusive<usize> {
    type Output = str;
    /* ... */
}
```

I've removed the re-exports temporarily because from what I can tell, there's no way to make re-exports of stable items unstable. They will be added back and stabilized in a separate PR.
…onathanBrouwer

Convert to inline diagnostics in `rustc_parse`

This was the most annoying one by far, had to make a few changes to the representation of two errors (no user-facing changes tho), these changes are in separate commits for clarity :)

For rust-lang#151366
r? @jdonszelmann
…scii, r=dtolnay

feat: Implement `int_from_ascii` for `NonZero<T>`

- Tracking issue: rust-lang#134821

This pull request adds `from_ascii` and `from_ascii_radix` methods to `NonZero<T>` that parses a non-zero integer from an ASCII-byte slice (`&[u8]`) with decimal digits or digits in a given base.

When using the combination of `int::from_ascii` or `int::from_ascii_radix` and `NonZero::<T>::new`, [`IntErrorKind::Zero`](https://doc.rust-lang.org/core/num/enum.IntErrorKind.html#variant.Zero) cannot be returned as an error.

`NonZero::<T>::from_str_radix` and `NonZero::<T>::from_str` require a string (`&str`) as a parameter.

```rust
// Cannot return `IntErrorKind::Zero` as an error.
assert_eq!(NonZero::new(u8::from_ascii(b"0").unwrap()), None);

// Can return `IntErrorKind::Zero` as an error.
let err = NonZero::<u8>::from_ascii(b"0").unwrap_err();
assert_eq!(err.kind(), &IntErrorKind::Zero);
```

See also rust-lang#152193
…pratt

Stabilize `core::hint::cold_path`

`cold_path` has been around unstably for a while and is a rather useful tool to have. It does what it is supposed to and there are no known remaining issues, so stabilize it here (including const).

Newly stable API:

```rust
// in core::hint
pub const fn cold_path();
```

I have opted to exclude `likely` and `unlikely` for now since they have had some concerns about ease of use that `cold_path` doesn't suffer from. `cold_path` is also significantly more flexible; in addition to working with boolean `if` conditions, it can be used in `match` arms, `if let`, closures, and other control flow blocks. `likely` and `unlikely` are also possible to implement in user code via `cold_path`, if desired.

Closes: rust-lang#136873 (tracking issue)

---

There has been some design and implementation work for making `#[cold]` function in more places, such as `if` arms, `match` arms, and closure bodies. Considering a stable `cold_path` will cover all of these usecases, it does not seem worth pursuing a more powerful `#[cold]` as an alternative way to do the same thing. If the lang team agrees, then:

Closes: rust-lang#26179
Closes: rust-lang#120193
…-lto, r=nnethercote

Linker-plugin-based LTO: give an explanation how to use linker-plugin-lto with full LTO

Closes rust-lang#138910

The existing linker-plugin-based LTO documentation does not describe the correct usage of full LTO. Specifically, when invoking `rustc` with full LTO, the `-C lto` flag must be passed in addition to `-C linker-plugin-lto`.

Also, this PR documents the use of full LTO when linking Rust with Fortran. Unfortunately, LLVM `flang` does not currently support ThinLTO, so full LTO is the only viable option in this case.

Toolchain combinations were slightly updated.

TODO:
- [x] check swiftc compiler. Almost unusable.
- [x] check how std lib is actually compiled
- [x] add note about LLD and bitcode
- [x] report bug to LLVM: llvm/llvm-project#179800

<details>
  <summary>Swiftc is unusable</summary>

https://www.swift.org/install/ gave me LLVM-17. During playing with swift main + rust static library, LLVM-23 removed main :D

```console
# thin LTO Rust:
rustc --crate-type=staticlib -Clinker-plugin-lto -Copt-level=3 ./ftn.rs
# full LTO swift:
swiftc -static libftn.a main.swift -lto=llvm-full -O -use-ld=/tmp/test/llvm-project/install/bin/ld.lld -Xlinker --gc-sections -Xlinker --as-needed -o sr
 ./sr
> ftn() returned: 77
# thin LTO swift:
swiftc -static libftn.a main.swift -lto=llvm-thin -O -use-ld=/tmp/test/llvm-project/install/bin/ld.lld -Xlinker --gc-sections -Xlinker --as-needed -o sr
./sr
> No output
```

</details>
…er-say-about-the-lldb-version-level, r=Noratrieb

Ignore all debuginfo tests for LLDB that we do not run in CI

We only run LLDB 1500 in CI. Any test with a min-lldb-version above that is currently ignored. It's not clear any of these tests actually work with that LLDB version, and they definitely don't work on LLDB ~2100. So, ignore them until we fix debuginfo testing.

Fixes rust-lang#151966
…cache, r=Zalathar

Move `rustc_query_system::cache`.

It only defines two types, `Cache` and `WithDepNode`. Neither has anything much to do with queries -- they use `DepNodeIndex`, that's all.

This commit moves the module into `rustc_middle`, to where they are used. It also renames the extremely non-descriptive `Cache` as `WithDepNodeCache`.

r? @Zalathar
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Feb 7, 2026
@rustbot rustbot added A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-run-make Area: port run-make Makefiles to rmake.rs A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Feb 7, 2026
@JonathanBrouwer
Copy link
Contributor Author

@bors r+ rollup=never p=5

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 7, 2026

📌 Commit ae9d2d9 has been approved by JonathanBrouwer

It is now in the queue for this repository.

@rust-bors rust-bors bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 7, 2026
@rust-bors

This comment has been minimized.

@rust-bors rust-bors bot added merged-by-bors This PR was explicitly merged by bors. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Feb 7, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 7, 2026

☀️ Test successful - CI
Approved by: JonathanBrouwer
Duration: 3h 12m 44s
Pushing 8c5605e to main...

@rust-bors rust-bors bot merged commit 8c5605e into rust-lang:main Feb 7, 2026
12 checks passed
@rustbot rustbot added this to the 1.95.0 milestone Feb 7, 2026
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#148590 Stabilize atomic_try_updateand deprecate fetch_update s… a9d11b681f2bb129894b1059ce7493a6702b6ac1 (link)
#150522 Stabilize new inclusive range type and iterator type 6b7dd47490a3ae1bb79f34e49456b01ee81277cd (link)
#151576 Stabilize core::hint::cold_path 60ef3777d005f2bb053a44e0b55847b74beaf262 (link)
#151933 Linker-plugin-based LTO: give an explanation how to use lin… f67827b137eb32680203865a3c0701ec93b009b6 (link)
#152010 Ignore all debuginfo tests for LLDB that we do not run in CI 7728d59978574947ab12aa1fc46200243277c82f (link)
#152199 Move rustc_query_system::cache. ab016a8f6a89b12e0c266f880d41153f12d77f1a (link)
#152235 Convert to inline diagnostics in rustc_parse a05c1ae0b4e893cbbe1c702583ddee23fa47ea71 (link)
#152267 feat: Implement int_from_ascii for NonZero<T> b21f08623696169a584991537d6d9d4dd23f860f (link)

previous master: 06cafcbe08

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@github-actions
Copy link
Contributor

github-actions bot commented Feb 7, 2026

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing 06cafcb (parent) -> 8c5605e (this PR)

Test differences

Show 2781 test diffs

Stage 0

  • errors::verify_parse_asm_expected_comma_184: pass -> [missing] (J0)
  • errors::verify_parse_asm_expected_other_185: pass -> [missing] (J0)
  • errors::verify_parse_asm_unsupported_operand_180: pass -> [missing] (J0)
  • errors::verify_parse_at_dot_dot_in_struct_pattern_130: pass -> [missing] (J0)
  • errors::verify_parse_at_in_struct_pattern_131: pass -> [missing] (J0)
  • errors::verify_parse_attr_without_generics_148: pass -> [missing] (J0)
  • errors::verify_parse_attribute_on_param_type_56: pass -> [missing] (J0)
  • errors::verify_parse_bad_assoc_type_bounds_146: pass -> [missing] (J0)
  • errors::verify_parse_bare_cr_in_frontmatter_40: pass -> [missing] (J0)
  • errors::verify_parse_binder_before_modifiers_177: pass -> [missing] (J0)
  • errors::verify_parse_cannot_be_raw_lifetime_110: pass -> [missing] (J0)
  • errors::verify_parse_compound_assignment_expression_in_let_52: pass -> [missing] (J0)
  • errors::verify_parse_const_global_cannot_be_mutable_93: pass -> [missing] (J0)
  • errors::verify_parse_dotdotdot_rest_pattern_121: pass -> [missing] (J0)
  • errors::verify_parse_expect_label_found_ident_154: pass -> [missing] (J0)
  • errors::verify_parse_expected_binding_left_of_at_123: pass -> [missing] (J0)
  • errors::verify_parse_expected_comma_after_pattern_field_133: pass -> [missing] (J0)
  • errors::verify_parse_expected_mut_or_const_in_raw_pointer_type_137: pass -> [missing] (J0)
  • errors::verify_parse_expected_statement_after_outer_attr_49: pass -> [missing] (J0)
  • errors::verify_parse_expected_struct_field_20: pass -> [missing] (J0)
  • errors::verify_parse_frontmatter_invalid_close_preceding_whitespace_37: pass -> [missing] (J0)
  • errors::verify_parse_frontmatter_too_many_dashes_39: pass -> [missing] (J0)
  • errors::verify_parse_generics_in_path_150: pass -> [missing] (J0)
  • errors::verify_parse_if_expression_missing_condition_16: pass -> [missing] (J0)
  • errors::verify_parse_inclusive_range_no_end_43: pass -> [missing] (J0)
  • errors::verify_parse_incorrect_semicolon_1: pass -> [missing] (J0)
  • errors::verify_parse_invalid_path_sep_in_fn_definition_83: pass -> [missing] (J0)
  • errors::verify_parse_keyword_label_112: pass -> [missing] (J0)
  • errors::verify_parse_lifetime_after_mut_138: pass -> [missing] (J0)
  • errors::verify_parse_macro_invocation_visibility_162: pass -> [missing] (J0)
  • errors::verify_parse_macro_invocation_with_qualified_path_10: pass -> [missing] (J0)
  • errors::verify_parse_macro_name_remove_bang_160: pass -> [missing] (J0)
  • errors::verify_parse_macro_rules_missing_bang_159: pass -> [missing] (J0)
  • errors::verify_parse_malformed_loop_label_7: pass -> [missing] (J0)
  • errors::verify_parse_missing_expression_in_for_loop_22: pass -> [missing] (J0)
  • errors::verify_parse_missing_for_in_trait_impl_85: pass -> [missing] (J0)
  • errors::verify_parse_no_digits_literal_114: pass -> [missing] (J0)
  • errors::verify_parse_recover_import_as_use_156: pass -> [missing] (J0)
  • errors::verify_parse_repeated_mut_in_pattern_127: pass -> [missing] (J0)
  • errors::verify_parse_self_argument_pointer_78: pass -> [missing] (J0)
  • errors::verify_parse_struct_literal_body_without_path_late_192: pass -> [missing] (J0)
  • errors::verify_parse_suffixed_literal_in_attribute_53: pass -> [missing] (J0)
  • errors::verify_parse_switch_ref_box_order_5: pass -> [missing] (J0)
  • errors::verify_parse_trait_alias_cannot_be_auto_89: pass -> [missing] (J0)
  • errors::verify_parse_unexpected_default_value_for_lifetime_in_generic_parameters_103: pass -> [missing] (J0)
  • errors::verify_parse_unexpected_if_with_if_66: pass -> [missing] (J0)
  • errors::verify_parse_use_eq_instead_31: pass -> [missing] (J0)
  • errors::verify_parse_where_generics_149: pass -> [missing] (J0)

Stage 1

  • errors::verify_parse_asm_expected_comma_184: pass -> [missing] (J1)
  • errors::verify_parse_asm_expected_other_185: pass -> [missing] (J1)
  • errors::verify_parse_asm_expected_string_literal_187: pass -> [missing] (J1)
  • errors::verify_parse_asm_non_abi_186: pass -> [missing] (J1)
  • errors::verify_parse_asm_requires_template_183: pass -> [missing] (J1)
  • errors::verify_parse_asm_sym_no_path_182: pass -> [missing] (J1)
  • errors::verify_parse_async_use_order_incorrect_64: pass -> [missing] (J1)
  • errors::verify_parse_attribute_on_param_type_56: pass -> [missing] (J1)
  • errors::verify_parse_attribute_on_type_57: pass -> [missing] (J1)
  • errors::verify_parse_bare_cr_in_frontmatter_40: pass -> [missing] (J1)
  • errors::verify_parse_binder_before_modifiers_177: pass -> [missing] (J1)
  • errors::verify_parse_bounds_not_allowed_on_trait_aliases_88: pass -> [missing] (J1)
  • errors::verify_parse_default_not_followed_by_item_81: pass -> [missing] (J1)
  • errors::verify_parse_delegation_non_trait_impl_reuse_190: pass -> [missing] (J1)
  • errors::verify_parse_doc_comment_does_not_document_anything_50: pass -> [missing] (J1)
  • errors::verify_parse_dot_dot_dot_range_to_pattern_not_allowed_128: pass -> [missing] (J1)
  • errors::verify_parse_double_colon_in_bound_65: pass -> [missing] (J1)
  • errors::verify_parse_empty_exponent_float_116: pass -> [missing] (J1)
  • errors::verify_parse_expect_dotdot_not_dotdotdot_15: pass -> [missing] (J1)
  • errors::verify_parse_expected_binding_left_of_at_123: pass -> [missing] (J1)
  • errors::verify_parse_field_expression_with_generic_9: pass -> [missing] (J1)
  • errors::verify_parse_float_literal_requires_integer_part_13: pass -> [missing] (J1)
  • errors::verify_parse_frontmatter_invalid_infostring_34: pass -> [missing] (J1)
  • errors::verify_parse_if_expression_missing_condition_16: pass -> [missing] (J1)
  • errors::verify_parse_invalid_literal_suffix_on_tuple_index_44: pass -> [missing] (J1)
  • errors::verify_parse_invalid_path_sep_in_fn_definition_83: pass -> [missing] (J1)
  • errors::verify_parse_left_arrow_operator_29: pass -> [missing] (J1)
  • errors::verify_parse_macro_invocation_with_qualified_path_10: pass -> [missing] (J1)
  • errors::verify_parse_macro_rules_missing_bang_159: pass -> [missing] (J1)
  • errors::verify_parse_maybe_fn_typo_with_impl_67: pass -> [missing] (J1)
  • errors::verify_parse_missing_const_type_94: pass -> [missing] (J1)
  • errors::verify_parse_missing_expression_in_for_loop_22: pass -> [missing] (J1)
  • errors::verify_parse_missing_plus_in_bounds_166: pass -> [missing] (J1)
  • errors::verify_parse_missing_trait_in_trait_impl_84: pass -> [missing] (J1)
  • errors::verify_parse_modifier_lifetime_152: pass -> [missing] (J1)
  • errors::verify_parse_mut_on_nested_ident_pattern_125: pass -> [missing] (J1)
  • errors::verify_parse_need_plus_after_trait_object_lifetime_136: pass -> [missing] (J1)
  • errors::verify_parse_nonterminal_expected_ident_107: pass -> [missing] (J1)
  • errors::verify_parse_nonterminal_expected_item_keyword_105: pass -> [missing] (J1)
  • errors::verify_parse_path_found_named_params_69: pass -> [missing] (J1)
  • errors::verify_parse_pattern_method_param_without_body_60: pass -> [missing] (J1)
  • errors::verify_parse_pattern_on_wrong_side_of_at_122: pass -> [missing] (J1)
  • errors::verify_parse_return_types_use_thin_arrow_135: pass -> [missing] (J1)
  • errors::verify_parse_static_with_generics_170: pass -> [missing] (J1)
  • errors::verify_parse_too_many_hashes_118: pass -> [missing] (J1)
  • errors::verify_parse_unexpected_const_in_generic_param_62: pass -> [missing] (J1)
  • errors::verify_parse_unexpected_lifetime_in_pattern_124: pass -> [missing] (J1)
  • errors::verify_parse_unexpected_token_after_struct_name_found_metavar_100: pass -> [missing] (J1)
  • errors::verify_parse_unexpected_token_after_struct_name_found_reserved_identifier_96: pass -> [missing] (J1)
  • errors::verify_parse_varargs_without_pattern_189: pass -> [missing] (J1)

Stage 2

  • [debuginfo-lldb] tests/debuginfo/coroutine-objects.rs: ignore (ignored when the LLDB version is 1800) -> ignore (ignored when the debugger is lldb) (J2)
  • [debuginfo-lldb] tests/debuginfo/option-like-enum.rs: ignore (ignored when the LLDB version is 1800) -> ignore (ignored when the debugger is lldb) (J2)

(and 313 additional test diffs)

Additionally, 2368 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 8c5605e130081cbff57f505c56466538039346b1 --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. dist-x86_64-apple: 1h 41m -> 2h 16m (+35.1%)
  2. i686-gnu-nopt-1: 2h 59m -> 2h 23m (-20.2%)
  3. aarch64-apple: 3h 4m -> 2h 27m (-19.7%)
  4. aarch64-gnu-debug: 1h 11m -> 1h 20m (+12.9%)
  5. dist-s390x-linux: 1h 27m -> 1h 37m (+11.9%)
  6. x86_64-gnu-llvm-20-2: 1h 30m -> 1h 39m (+9.7%)
  7. x86_64-msvc-2: 2h 31m -> 2h 17m (-9.3%)
  8. dist-powerpc64-linux-musl: 1h 39m -> 1h 30m (-9.0%)
  9. i686-gnu-2: 1h 49m -> 1h 39m (-8.9%)
  10. dist-powerpc64le-linux-gnu: 1h 39m -> 1h 30m (-8.7%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (8c5605e): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.6% [0.6%, 0.6%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-1.6% [-3.3%, -0.8%] 6
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -6.4%, secondary 5.6%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
5.6% [5.6%, 5.6%] 1
Improvements ✅
(primary)
-6.4% [-6.4%, -6.4%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -6.4% [-6.4%, -6.4%] 1

Cycles

Results (secondary 6.6%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
6.6% [6.6%, 6.6%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Binary size

Results (secondary -0.0%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.0% [-0.0%, -0.0%] 2
All ❌✅ (primary) - - 0

Bootstrap: 473.906s -> 472.649s (-0.27%)
Artifact size: 397.97 MiB -> 398.00 MiB (0.01%)

@JonathanBrouwer
Copy link
Contributor Author

The regression looks like noise to me, the improvements are caused by #152235

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-run-make Area: port run-make Makefiles to rmake.rs A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants