diff --git a/src/librustdoc/json/conversions.rs b/src/librustdoc/json/conversions.rs index 5f3793ead42ba..1fedb0144d1d0 100644 --- a/src/librustdoc/json/conversions.rs +++ b/src/librustdoc/json/conversions.rs @@ -662,12 +662,10 @@ impl FromWithTcx for Variant { Tuple(fields) => Variant::Tuple( fields .into_iter() - .map(|f| { - if let clean::StructFieldItem(ty) = *f.kind { - ty.into_tcx(tcx) - } else { - unreachable!() - } + .filter_map(|f| match *f.kind { + clean::StructFieldItem(ty) => Some(ty.into_tcx(tcx)), + clean::StrippedItem(_) => None, + _ => unreachable!(), }) .collect(), ), diff --git a/src/test/rustdoc-json/enum_variant_hidden.rs b/src/test/rustdoc-json/enum_variant_hidden.rs new file mode 100644 index 0000000000000..96c96a975d31a --- /dev/null +++ b/src/test/rustdoc-json/enum_variant_hidden.rs @@ -0,0 +1,13 @@ +// Regression test for . + +#![no_core] +#![feature(no_core)] + +// @has enum_variant_hidden.json "$.index[*][?(@.name=='ParseError')]" +// @has - "$.index[*][?(@.name=='UnexpectedEndTag')]" +// @is - "$.index[*][?(@.name=='UnexpectedEndTag')].inner.variant_kind" '"tuple"' +// @is - "$.index[*][?(@.name=='UnexpectedEndTag')].inner.variant_inner" [] + +pub enum ParseError { + UnexpectedEndTag(#[doc(hidden)] u32), +}