Skip to content

Rollup of 3 pull requests#158426

Closed
jhpratt wants to merge 9 commits into
rust-lang:mainfrom
jhpratt:rollup-SeRw4IY
Closed

Rollup of 3 pull requests#158426
jhpratt wants to merge 9 commits into
rust-lang:mainfrom
jhpratt:rollup-SeRw4IY

Conversation

@jhpratt

@jhpratt jhpratt commented Jun 26, 2026

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

joboet and others added 9 commits June 25, 2026 15:51
…rbid`

* Added documentation for allow, cfg, deny, forbid, deprecated and warn attribute

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* address review feedback

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* address review feedback

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* address review feedback

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* address feedback

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* add the right deprecated link

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* add the right deprecated link

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* fix typo

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* fix phrasing

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* fix phrasing

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* address feedback

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* address feedback and add link to rustc book

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
* address feedback

Signed-off-by: Emmanuel Ugwu <emmanuelugwu121@gmail.com>
… r=jackh726

Add supertrait item shadowing for type-level path resolution

This makes type-level name resolution (used primarily for associated types) also prefer subtrait items to supertrait items in case of ambiguity.

This addresses the concern from rust-lang#148605 about the inconsistency with name resolution in expressions and method calls.
…-warn, r=GuillaumeGomez,traviscross

Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid`

Added documentation for built-in `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid`  attributes using the #[doc(attribute = "...")] mechanism.

Part of rust-lang#157604

@rustbot r? @GuillaumeGomez
cc @fmease
cc @mejrs
… r=jhpratt

std: truncate thread names on NetBSD

NetBSD [enforces limits on the length of thread names](https://man.netbsd.org/pthread_setname_np.3#DESCRIPTION). On all similar platforms (e.g. Linux, macOS) we truncate the Rust name so that at least some of the name is visible in the OS.

CC @semarie
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Jun 26, 2026
@rustbot rustbot added 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 Jun 26, 2026
@jhpratt

jhpratt commented Jun 26, 2026

Copy link
Copy Markdown
Member Author

@bors r+ rollup=never p=5

@rust-bors

rust-bors Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

📌 Commit d865b43 has been approved by jhpratt

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 Jun 26, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jun 26, 2026
Rollup of 3 pull requests

Successful merges:

 - #152225 (Add supertrait item shadowing for type-level path resolution)
 - #158244 (Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid` )
 - #158399 (std: truncate thread names on NetBSD)
@rust-bors rust-bors Bot 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 26, 2026
@rust-bors

rust-bors Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 49c1225 failed: CI. Failed job:

@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)
  NO_DOWNLOAD_CI_LLVM: 1
  WIX: /c/a/rust/rust/wix
##[endgroup]
    Updating crates.io index
error: failed to get `time` 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 (C:\a\rust\rust\src\ci\citool)`

Caused by:
  failed to load source for dependency `time`

Caused by:

@jhpratt

jhpratt commented Jun 26, 2026

Copy link
Copy Markdown
Member Author

@bors treeclosed=1

@bors retry

@rust-bors

rust-bors Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Tree closed for PRs with priority less than 1.

@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 Jun 26, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jun 26, 2026
Rollup of 3 pull requests

Successful merges:

 - #152225 (Add supertrait item shadowing for type-level path resolution)
 - #158244 (Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid` )
 - #158399 (std: truncate thread names on NetBSD)
@rust-bors rust-bors Bot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 26, 2026
rust-bors Bot pushed a commit that referenced this pull request Jun 26, 2026
Rollup of 3 pull requests

Successful merges:

 - #152225 (Add supertrait item shadowing for type-level path resolution)
 - #158244 (Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid` )
 - #158399 (std: truncate thread names on NetBSD)
@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-loongarch64-linux
##[endgroup]
    Updating crates.io index
error: failed to get `adler2` 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 `adler2`

Caused by:
  unable to update registry `crates-io`

Caused by:
  download of ad/le/adler2 failed

Caused by:
  curl failed

Caused by:

@rust-bors rust-bors Bot 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 26, 2026
@rust-bors

rust-bors Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

💔 Test for a774033 failed: CI. Failed job:

@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 (a77403381 2026-06-26)"} 
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 (a77403381 2026-06-26)"} 
check:17'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           33: !4 = !{} 
check:17'0     ~~~~~~~~~
>>>>>>
------------------------------------------

---- [codegen] tests/codegen-llvm/issues/issue-107681-unwrap_unchecked.rs stdout end ----

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

rust-bors Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

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

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

Labels

rollup A PR which is a rollup S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. 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.

6 participants