diff --git a/src/librustdoc/html/render/mod.rs b/src/librustdoc/html/render/mod.rs
index a5f08fdac11c9..9bac1b93f0d26 100644
--- a/src/librustdoc/html/render/mod.rs
+++ b/src/librustdoc/html/render/mod.rs
@@ -787,10 +787,12 @@ fn assoc_type(
indent: usize,
cx: &Context<'_>,
) {
+ let tcx = cx.tcx();
write!(
w,
- "{indent}type {name}{generics}",
+ "{indent}{vis}type {name}{generics}",
indent = " ".repeat(indent),
+ vis = visibility_print_with_space(it.visibility(tcx), it.item_id, cx),
href = assoc_href_attr(it, link, cx),
name = it.name.as_ref().unwrap(),
generics = generics.print(cx),
diff --git a/tests/rustdoc/anchors.no_type_anchor2.html b/tests/rustdoc/anchors.no_type_anchor2.html
index f8b59160f15ee..71e93990e29e9 100644
--- a/tests/rustdoc/anchors.no_type_anchor2.html
+++ b/tests/rustdoc/anchors.no_type_anchor2.html
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/tests/rustdoc/visibility.rs b/tests/rustdoc/visibility.rs
index 4099b54f08152..4f9b06fd7a207 100644
--- a/tests/rustdoc/visibility.rs
+++ b/tests/rustdoc/visibility.rs
@@ -1,6 +1,8 @@
// compile-flags: --document-private-items
#![crate_name = "foo"]
+#![feature(inherent_associated_types)]
+#![allow(incomplete_features)]
// @!has 'foo/index.html' '//a[@href="struct.FooPublic.html"]/..' 'FooPublic 🔒'
// @has 'foo/struct.FooPublic.html' '//pre' 'pub struct FooPublic'
@@ -103,3 +105,26 @@ impl PubTrait for FooPublic {
const CONST: usize = 0;
fn function() {}
}
+
+pub struct Assoc;
+
+// @has foo/struct.Assoc.html
+impl Assoc {
+ // @has - '//*[@id="associatedtype.TypePub"]' 'pub type TypePub'
+ pub type TypePub = usize;
+
+ // @has - '//*[@id="associatedtype.TypePriv"]' 'pub(crate) type TypePriv'
+ type TypePriv = usize;
+
+ // @has - '//*[@id="associatedconstant.CONST_PUB"]' 'pub const CONST_PUB'
+ pub const CONST_PUB: usize = 0;
+
+ // @has - '//*[@id="associatedconstant.CONST_PRIV"]' 'pub(crate) const CONST_PRIV'
+ const CONST_PRIV: usize = 0;
+
+ // @has - '//*[@id="method.function_pub"]' 'pub fn function_pub()'
+ pub fn function_pub() {}
+
+ // @has - '//*[@id="method.function_priv"]' 'pub(crate) fn function_priv()'
+ fn function_priv() {}
+}