diff options
| author | León Orell Valerian Liehr <me@fmease.dev> | 2025-03-19 22:44:19 +0100 |
|---|---|---|
| committer | León Orell Valerian Liehr <me@fmease.dev> | 2025-03-19 23:29:35 +0100 |
| commit | b5069da9df85b8f374a3fd59c2145396e374537d (patch) | |
| tree | d7925a3d511caea24de5a8067b971ff10271d01a | |
| parent | 1370611c0ae0c7232bcd073e15046bae6b519e50 (diff) | |
| download | rust-b5069da9df85b8f374a3fd59c2145396e374537d.tar.gz rust-b5069da9df85b8f374a3fd59c2145396e374537d.zip | |
Check attrs: Don't try to retrieve the name of list stems
| -rw-r--r-- | compiler/rustc_passes/src/check_attr.rs | 3 | ||||
| -rw-r--r-- | tests/ui/rustdoc/doc-alias-use-item-list-stem.rs | 11 |
2 files changed, 12 insertions, 2 deletions
diff --git a/compiler/rustc_passes/src/check_attr.rs b/compiler/rustc_passes/src/check_attr.rs index d1917f39c07..bba172ce144 100644 --- a/compiler/rustc_passes/src/check_attr.rs +++ b/compiler/rustc_passes/src/check_attr.rs @@ -952,8 +952,7 @@ impl<'tcx> CheckAttrVisitor<'tcx> { tcx.dcx().emit_err(errors::DocAliasBadLocation { span, attr_str, location }); return; } - let item_name = self.tcx.hir_name(hir_id); - if item_name == doc_alias { + if self.tcx.hir_opt_name(hir_id) == Some(doc_alias) { tcx.dcx().emit_err(errors::DocAliasNotAnAlias { span, attr_str }); return; } diff --git a/tests/ui/rustdoc/doc-alias-use-item-list-stem.rs b/tests/ui/rustdoc/doc-alias-use-item-list-stem.rs new file mode 100644 index 00000000000..ef310843e21 --- /dev/null +++ b/tests/ui/rustdoc/doc-alias-use-item-list-stem.rs @@ -0,0 +1,11 @@ +// Check that we don't ICE on `#[doc(alias)]`es placed on use items with list stems. +// issue: <https://github.com/rust-lang/rust/issues/138723> +//@ check-pass + +#[doc(alias = "empty")] +pub use {}; + +#[doc(alias = "id")] +pub use {std::convert::identity}; + +fn main() {} |
