Skip to content

Rollup of 6 pull requests - #158498

Closed
JonathanBrouwer wants to merge 21 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-3xKakOD
Closed

Rollup of 6 pull requests#158498
JonathanBrouwer wants to merge 21 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-3xKakOD

Conversation

@JonathanBrouwer

@JonathanBrouwerJonathanBrouwer commented Jun 27, 2026

Copy link
Copy Markdown
Member

View all comments

Successful merges:

r? @ghost

Create a similar rollup

GuillaumeGomezand others added 21 commits March 12, 2026 11:44
Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
…oded lib.rmeta-link archive members, and routes add_archive read through it so each rlib link metadata is decoded at most once per link. This is a demand from a previous discussion and we split it out as its own PR. It gives that PR a decode once path tp read instead of reparsing each rlib per crate once native_lib_filenames moves to a link time read.
Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
…=petrochenkov
Adds RmetaLinkCache a per-link cache that uses path as the key of dec…
Adds `RmetaLinkCache` a per link and path keyed cache of decoded `lib.rmeta-link` archive members and routes the add_archive read through it so that each rlib link metadata is decoded only one per link at most.
This is a request that originated from the discussion in rust-lang#156735 and we split it out as its own PR. It gives that PR a decode once path to read instead of reparsing each `rlib` per crate, and this will be in effect once `native_lib_filenames` moves to a link-time read.
Part of rust-lang#138243
…, r=notriddle,GuillaumeGomez
Add new `unused_footnote_definition` rustdoc lint
Follow-up of rust-lang#137803 (where the two first commits come from).
It adds a new lint which checks for unused footnote definitions.
r? @notriddle
…y-count, r=petrochenkov
Fix too-short variance slice in `variances_of` cycle recovery
This changes the cycle-error fallback in `variances_of` to size the slice the same way the provider does in [`variance/solve.rs:117`](https://github.com/rust-lang/rust/blob/32ea3615cc027bcb8fd720c7511ffb484f6223a3/compiler/rustc_hir_analysis/src/variance/solve.rs#L117).
This can otherwise ICE under the parallel frontend in `relate_args_with_variances` for items that inherit their generics from a parent (like a tuple struct constructor). See rust-lang#154560 (comment)
…rget, r=JonathanBrouwer
Allow the unstable attribute on foreign type
While working the `FnPtr` trait in rust-lang#156176@carbotaniuman was trying to implement `Code` as an extern type but got an error as the current stability infrastructure does not allow `unstable` attribute on foreign type. rust-lang#158200
This PR fixes that by allowing the `unstable` attribute on ForeignTy and adds test to verify.
@rustbot r? @JonathanBrouwer
…itions, r=GuillaumeGomez
Upgrade `jsonsocck` and `jsondoclint` to edition 2024.
No code changes were necessary to perform the upgrade. I used `cargo fix --edition`, and additionally had an AI tool review the source code against the [Rust 2024 edition guide](https://github.com/rust-lang/edition-guide/tree/master/src/rust-2024) and the [edition upgrade guide](https://doc.rust-lang.org/edition-guide/editions/transitioning-an-existing-project-to-a-new-edition.html) to ensure the change works properly.
r? @GuillaumeGomez
**AI disclosure:** This PR is the product of a combination of manual work and AI tools. I secured approval in advance from the designated reviewer. I stand behind the quality of the code I'm submitting, and I vouch it's as good or better compared to if I had written every line by my own hand.
…-types-edition, r=GuillaumeGomez
Upgrade `rustdoc-json-types` to 2024 edition.
No code changes were necessary to perform the upgrade. I used `cargo fix --edition`, and additionally had an AI tool review the source code against the [Rust 2024 edition guide](https://github.com/rust-lang/edition-guide/tree/master/src/rust-2024) and the [edition upgrade guide](https://doc.rust-lang.org/edition-guide/editions/transitioning-an-existing-project-to-a-new-edition.html) to ensure the change works properly.
Same approach as in rust-lang#158470.
I don't believe this will raise the MSRV of `rustdoc-types`, because [its MSRV is already 1.85](https://crates.io/crates/rustdoc-types) which [supports the 2024 edition](https://blog.rust-lang.org/2025/02/20/Rust-1.85.0/).
r? @GuillaumeGomez
**AI disclosure:** This PR is the product of a combination of manual work and AI tools. I secured approval in advance from the designated reviewer. I stand behind the quality of the code I'm submitting, and I vouch it's as good or better compared to if I had written every line by my own hand.
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Jun 27, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-rustdoc-json Area: Rustdoc JSON backend 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-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. labels Jun 27, 2026
@JonathanBrouwer

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

📌 Commit bc0899f has been approved by JonathanBrouwer

It is now in the queue for this repository.

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

rust-borsBot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

💔 Test for a254fa8 failed: CI. Failed job:

@JonathanBrouwer

Copy link
Copy Markdown
MemberAuthor

@bors retry
@bors try jobs=x86_64-gnu-llvm-22-3

@rust-borsrust-borsBot 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 Jun 27, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jun 27, 2026
Rollup of 6 pull requests
try-job: x86_64-gnu-llvm-22-3
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Jun 27, 2026
…uwer
Rollup of 6 pull requests
Successful merges:
- #158194 (Adds RmetaLinkCache a per-link cache that uses path as the key of dec…)
- #137858 (Add new `unused_footnote_definition` rustdoc lint)
- #158163 (Fix too-short variance slice in `variances_of` cycle recovery)
- #158233 (Allow the unstable attribute on foreign type)
- #158470 (Upgrade `jsonsocck` and `jsondoclint` to edition 2024.)
- #158488 (Upgrade `rustdoc-json-types` to 2024 edition.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job x86_64-gnu-llvm-22-3 failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [codegen] tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs stdout ----
------FileCheck stdout------------------------------
------FileCheck stderr------------------------------
/checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs:17:12: error: CHECK: expected string not found in input
// CHECK: [[RET:%.*]] = load i32, ptr [[INNER]]
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: scanning from here
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: with "INNER" equal to "%_7"
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:15:2: note: possible intended match here
%_4 = load i32, ptr %_6, align 4, !noundef !4
^
Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll
Check file: /checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs
-dump-input=help explains the following input dump.
Input was:
<<<<<<
1: ; ModuleID = 'issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0' 2: source_filename = "issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0" 3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 4: target triple = "x86_64-unknown-linux-gnu" 5: 6: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable 7: define noundef i32 @foo(ptr noalias nofree noundef align 8 captures(none) dereferenceable(16) %x) unnamed_addr #0 { 8: start: 9: %0 = getelementptr inbounds nuw i8, ptr %x, i64 8 10: %_6 = load ptr, ptr %0, align 8, !nonnull !4, !noundef !4 11: %_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4 check:17'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
check:17'1 with "INNER" equal to "%_7"
12: %_8 = icmp ne ptr %_6, %_7 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13: %_14 = getelementptr inbounds nuw i8, ptr %_6, i64 4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14: store ptr %_14, ptr %0, align 8 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15: %_4 = load i32, ptr %_6, align 4, !noundef !4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:17'2 ? possible intended match
16: tail call void @llvm.assume(i1 %_8) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17: ret i32 %_4 check:17'0 ~~~~~~~~~~~~~
18: } check:17'0 ~~
19: check:17'0 ~
20: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21: declare void @llvm.assume(i1 noundef) #1 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22: check:17'0 ~
23: attributes #0 = { mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable "probe-stack"="inline-asm" "target-cpu"="x86-64" } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24: attributes #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25: check:17'0 ~
26: !llvm.module.flags = !{!0, !1, !2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27: !llvm.ident = !{!3} check:17'0 ~~~~~~~~~~~~~~~~~~~~
28: check:17'0 ~
29: !0 = !{i32 8, !"PIC Level", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30: !1 = !{i32 2, !"RtLibUseGOT", i32 1} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31: !2 = !{i32 7, !"uwtable", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32: !3 = !{!"rustc version 1.98.0-nightly (dc97cf5d1 2026-06-27)"} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33: !4 = !{} check:17'0 ~~~~~~~~~
>>>>>>
------------------------------------------
error: verification with 'FileCheck' failed
status: exit status: 1
command: "/usr/lib/llvm-22/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll" "/checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs" "--check-prefix=CHECK" "--allow-unused-prefixes" "--dump-input-context" "100" "--implicit-check-not" "br {{.*}}" "--implicit-check-not" "select"
stdout: none
--- stderr -------------------------------
/checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs:17:12: error: CHECK: expected string not found in input
// CHECK: [[RET:%.*]] = load i32, ptr [[INNER]]
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: scanning from here
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: with "INNER" equal to "%_7"
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:15:2: note: possible intended match here
%_4 = load i32, ptr %_6, align 4, !noundef !4
^
Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll
Check file: /checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs
-dump-input=help explains the following input dump.
Input was:
<<<<<<
1: ; ModuleID = 'issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0' 2: source_filename = "issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0" 3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 4: target triple = "x86_64-unknown-linux-gnu" 5: 6: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable 7: define noundef i32 @foo(ptr noalias nofree noundef align 8 captures(none) dereferenceable(16) %x) unnamed_addr #0 { 8: start: 9: %0 = getelementptr inbounds nuw i8, ptr %x, i64 8 10: %_6 = load ptr, ptr %0, align 8, !nonnull !4, !noundef !4 11: %_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4 check:17'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
check:17'1 with "INNER" equal to "%_7"
12: %_8 = icmp ne ptr %_6, %_7 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13: %_14 = getelementptr inbounds nuw i8, ptr %_6, i64 4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14: store ptr %_14, ptr %0, align 8 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15: %_4 = load i32, ptr %_6, align 4, !noundef !4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:17'2 ? possible intended match
16: tail call void @llvm.assume(i1 %_8) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17: ret i32 %_4 check:17'0 ~~~~~~~~~~~~~
18: } check:17'0 ~~
19: check:17'0 ~
20: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21: declare void @llvm.assume(i1 noundef) #1 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22: check:17'0 ~
23: attributes #0 = { mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable "probe-stack"="inline-asm" "target-cpu"="x86-64" } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24: attributes #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25: check:17'0 ~
26: !llvm.module.flags = !{!0, !1, !2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27: !llvm.ident = !{!3} check:17'0 ~~~~~~~~~~~~~~~~~~~~
28: check:17'0 ~
29: !0 = !{i32 8, !"PIC Level", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30: !1 = !{i32 2, !"RtLibUseGOT", i32 1} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31: !2 = !{i32 7, !"uwtable", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32: !3 = !{!"rustc version 1.98.0-nightly (dc97cf5d1 2026-06-27)"} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33: !4 = !{} check:17'0 ~~~~~~~~~
>>>>>>
------------------------------------------
---- [codegen] tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs stdout end ----

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jun 27, 2026
@rust-bors

rust-borsBot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

💔 Test for e941358 failed: CI. Failed job:

@JonathanBrouwer

Copy link
Copy Markdown
MemberAuthor

@bors retry

@rust-bors

rust-borsBot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

❗ You can only retry pull requests that are approved and have a previously failed auto build.

Hint: There is currently a pending auto build on this PR. To cancel it, run @bors cancel.

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

A job failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)
 IMAGE: dist-x86_64-solaris
##[endgroup]
Updating crates.io index
error: failed to get `simd-adler32` as a dependency of package `miniz_oxide v0.8.8`
... which satisfies dependency `miniz_oxide = "^0.8.5"` of package `flate2 v1.1.9`
... which satisfies dependency `flate2 = "^1.1.9"` of package `citool v0.1.0 (/home/runner/work/rust/rust/src/ci/citool)`
Caused by:
failed to load source for dependency `simd-adler32`
Caused by:

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

A job failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)
 TOOLSTATE_PUBLISH: 1
IMAGE: x86_64-gnu-aux
##[endgroup]
Updating crates.io index
error: failed to get `cookie` as a dependency of package `cookie_store v0.21.1`
... which satisfies dependency `cookie_store = "^0.21.1"` of package `ureq v3.0.8`
... which satisfies dependency `ureq = "^3"` of package `citool v0.1.0 (/home/runner/work/rust/rust/src/ci/citool)`
Caused by:
failed to load source for dependency `cookie`
Caused by:
unable to update registry `crates-io`
Caused by:
download of co/ok/cookie failed
Caused by:
curl failed
Caused by:

@rust-borsrust-borsBot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 27, 2026
@rust-bors

rust-borsBot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 7165505 failed: CI. Failed job:

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jun 27, 2026
@rust-bors

rust-borsBot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

PR #137858, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 27, 2026
@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jun 27, 2026
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job x86_64-gnu-llvm-22-3 failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [codegen] tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs stdout ----
------FileCheck stdout------------------------------
------FileCheck stderr------------------------------
/checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs:17:12: error: CHECK: expected string not found in input
// CHECK: [[RET:%.*]] = load i32, ptr [[INNER]]
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: scanning from here
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: with "INNER" equal to "%_7"
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:15:2: note: possible intended match here
%_4 = load i32, ptr %_6, align 4, !noundef !4
^
Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll
Check file: /checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs
-dump-input=help explains the following input dump.
Input was:
<<<<<<
1: ; ModuleID = 'issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0' 2: source_filename = "issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0" 3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 4: target triple = "x86_64-unknown-linux-gnu" 5: 6: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable 7: define noundef i32 @foo(ptr noalias nofree noundef align 8 captures(none) dereferenceable(16) %x) unnamed_addr #0 { 8: start: 9: %0 = getelementptr inbounds nuw i8, ptr %x, i64 8 10: %_6 = load ptr, ptr %0, align 8, !nonnull !4, !noundef !4 11: %_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4 check:17'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
check:17'1 with "INNER" equal to "%_7"
12: %_8 = icmp ne ptr %_6, %_7 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13: %_14 = getelementptr inbounds nuw i8, ptr %_6, i64 4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14: store ptr %_14, ptr %0, align 8 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15: %_4 = load i32, ptr %_6, align 4, !noundef !4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:17'2 ? possible intended match
16: tail call void @llvm.assume(i1 %_8) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17: ret i32 %_4 check:17'0 ~~~~~~~~~~~~~
18: } check:17'0 ~~
19: check:17'0 ~
20: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21: declare void @llvm.assume(i1 noundef) #1 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22: check:17'0 ~
23: attributes #0 = { mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable "probe-stack"="inline-asm" "target-cpu"="x86-64" } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24: attributes #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25: check:17'0 ~
26: !llvm.module.flags = !{!0, !1, !2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27: !llvm.ident = !{!3} check:17'0 ~~~~~~~~~~~~~~~~~~~~
28: check:17'0 ~
29: !0 = !{i32 8, !"PIC Level", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30: !1 = !{i32 2, !"RtLibUseGOT", i32 1} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31: !2 = !{i32 7, !"uwtable", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32: !3 = !{!"rustc version 1.98.0-nightly (e94135833 2026-06-27)"} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33: !4 = !{} check:17'0 ~~~~~~~~~
>>>>>>
------------------------------------------
error: verification with 'FileCheck' failed
status: exit status: 1
command: "/usr/lib/llvm-22/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll" "/checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs" "--check-prefix=CHECK" "--allow-unused-prefixes" "--dump-input-context" "100" "--implicit-check-not" "br {{.*}}" "--implicit-check-not" "select"
stdout: none
--- stderr -------------------------------
/checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs:17:12: error: CHECK: expected string not found in input
// CHECK: [[RET:%.*]] = load i32, ptr [[INNER]]
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: scanning from here
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:11:24: note: with "INNER" equal to "%_7"
%_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4
^
/checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll:15:2: note: possible intended match here
%_4 = load i32, ptr %_6, align 4, !noundef !4
^
Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/codegen-llvm/issues/issue-107681-unwrap_unchecked/issue-107681-unwrap_unchecked.ll
Check file: /checkout/tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs
-dump-input=help explains the following input dump.
Input was:
<<<<<<
1: ; ModuleID = 'issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0' 2: source_filename = "issue_107681_unwrap_unchecked.67fd71670d665894-cgu.0" 3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 4: target triple = "x86_64-unknown-linux-gnu" 5: 6: ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable 7: define noundef i32 @foo(ptr noalias nofree noundef align 8 captures(none) dereferenceable(16) %x) unnamed_addr #0 { 8: start: 9: %0 = getelementptr inbounds nuw i8, ptr %x, i64 8 10: %_6 = load ptr, ptr %0, align 8, !nonnull !4, !noundef !4 11: %_7 = load ptr, ptr %x, align 8, !nonnull !4, !noundef !4 check:17'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
check:17'1 with "INNER" equal to "%_7"
12: %_8 = icmp ne ptr %_6, %_7 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13: %_14 = getelementptr inbounds nuw i8, ptr %_6, i64 4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14: store ptr %_14, ptr %0, align 8 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15: %_4 = load i32, ptr %_6, align 4, !noundef !4 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:17'2 ? possible intended match
16: tail call void @llvm.assume(i1 %_8) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17: ret i32 %_4 check:17'0 ~~~~~~~~~~~~~
18: } check:17'0 ~~
19: check:17'0 ~
20: ; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21: declare void @llvm.assume(i1 noundef) #1 check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22: check:17'0 ~
23: attributes #0 = { mustprogress nofree norecurse nosync nounwind nonlazybind willreturn memory(read, argmem: readwrite, inaccessiblemem: write, target_mem0: none, target_mem1: none) uwtable "probe-stack"="inline-asm" "target-cpu"="x86-64" } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24: attributes #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25: check:17'0 ~
26: !llvm.module.flags = !{!0, !1, !2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27: !llvm.ident = !{!3} check:17'0 ~~~~~~~~~~~~~~~~~~~~
28: check:17'0 ~
29: !0 = !{i32 8, !"PIC Level", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30: !1 = !{i32 2, !"RtLibUseGOT", i32 1} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31: !2 = !{i32 7, !"uwtable", i32 2} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32: !3 = !{!"rustc version 1.98.0-nightly (e94135833 2026-06-27)"} check:17'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33: !4 = !{} check:17'0 ~~~~~~~~~
>>>>>>
------------------------------------------
---- [codegen] tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs stdout end ----

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job i686-gnu-nopt-1 failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)
+ --> $DIR/broken-footnote.rs:39:5
33 |
- LL | /// [^*]
- | -^^^
+ LL | /// [^1\.2]
+ | -^^^^^^
36 | |
37 | help: if it should not be a footnote, escape it: `\`
38 Note: some mismatched output was normalized before being compared
- --> /checkout/tests/rustdoc-ui/lints/broken-footnote.rs:42:5
- --> /checkout/tests/rustdoc-ui/lints/broken-footnote.rs:39:5
+ --> $DIR/broken-footnote.rs:42:5
+ LL | /// [^*]
+ | -^^^
+ --> $DIR/broken-footnote.rs:39:5
+ LL | /// [^1\.2]
+ | -^^^^^^
The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args lints/broken-footnote.rs`
error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/i686-unknown-linux-gnu/stage2/bin/rustdoc" "/checkout/tests/rustdoc-ui/lints/broken-footnote.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/i686-unknown-linux-gnu/stage2" "--target=i686-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-o" "/checkout/obj/build/i686-unknown-linux-gnu/test/rustdoc-ui/lints/broken-footnote" "-A" "internal_features" "-A" "incomplete_features" "-A" "unused_parens" "-A" "unused_braces" "-Cdebuginfo=0"
stdout: none
--- stderr -------------------------------
error: no footnote definition matching this footnote
##[error] --> /checkout/tests/rustdoc-ui/lints/broken-footnote.rs:3:45
|
LL | //! Footnote referenced [^1]. And [^2]. And [^bla].
| -^^^^^
| |
| help: if it should not be a footnote, escape it: `\`
|
note: the lint level is defined here
---
error: no footnote definition matching this footnote
##[error] --> /checkout/tests/rustdoc-ui/lints/broken-footnote.rs:3:35
|
LL | //! Footnote referenced [^1]. And [^2]. And [^bla].
| -^^^
| |
| help: if it should not be a footnote, escape it: `\`
error: no footnote definition matching this footnote
---
error: no footnote definition matching this footnote
##[error] --> /checkout/tests/rustdoc-ui/lints/broken-footnote.rs:36:5
|
LL | /// [^a b]
| -^^^^^
| |
| help: if it should not be a footnote, escape it: `\`
error: aborting due to 5 previous errors

@JonathanBrouwer
JonathanBrouwer deleted the rollup-3xKakOD branch August 21, 2026 08:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-query-systemArea: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html)A-rustdoc-jsonArea: Rustdoc JSON backendrollupA PR which is a rollupT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants

@JonathanBrouwer@rust-log-analyzer@rustbot@GuillaumeGomez@xmakro@kantnero@obi1kenobi@notriddle@mehdiakiki