Skip to content

rustdoc: stack overflow: rustdoc::clean::clean_qpath() #98250

Closed

Description

@matthiaskrgr

I tried this code:
./src/test/ui/impl-trait/recursive-type-alias-impl-trait-declaration-too-subtle-2.rs

#![feature(type_alias_impl_trait)]

type Foo = impl PartialEq<(Foo, i32)>;

struct Bar;

impl PartialEq<(Foo, i32)> for Bar {
//~^ ERROR cannot implement trait on type alias impl trait
    fn eq(&self, _other: &(Foo, i32)) -> bool {
        true
    }
}

fn foo() -> Foo {
    Bar
}

fn main() {}

Meta

rustc --version --verbose:

rustdoc 1.63.0-nightly (ca122c7eb 2022-06-13)
binary: rustdoc
commit-hash: ca122c7ebb3ab50149c9d3d24ddb59c252b32272
commit-date: 2022-06-13
host: x86_64-unknown-linux-gnu
release: 1.63.0-nightly
LLVM version: 14.0.5
Backtrace

....
#32191 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32192 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32193 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32194 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32195 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32196 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32197 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32198 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32199 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32200 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32201 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32202 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32203 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32204 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32205 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32206 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32207 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32208 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32209 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32210 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32211 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32212 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32213 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32214 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32215 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32216 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32217 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32218 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32219 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32220 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32221 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32222 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32223 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32224 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32225 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32226 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32227 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32228 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32229 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32230 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32231 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32232 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32233 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32234 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32235 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32236 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32237 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32238 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32239 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32240 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
--Type <RET> for more, q to quit, c to continue without paging--
#32241 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32242 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32243 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32244 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32245 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32246 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32247 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32248 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32249 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32250 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32251 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32252 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32253 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32254 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32255 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32256 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32257 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32258 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32259 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32260 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32261 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32262 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32263 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32264 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32265 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32266 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32267 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32268 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32269 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32270 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32271 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32272 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32273 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32274 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32275 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32276 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32277 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32278 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32279 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32280 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32281 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32282 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32283 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32284 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32285 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32286 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32287 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32288 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32289 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32290 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32291 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32292 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32293 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32294 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32295 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32296 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32297 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32298 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32299 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32300 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32301 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32302 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
--Type <RET> for more, q to quit, c to continue without paging--
#32303 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32304 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32305 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32306 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32307 0x0000555555753f87 in <rustdoc::core::DocContext>::enter_alias::<rustdoc::clean::maybe_expand_private_type_alias::{closure#3}, rustdoc::clean::types::Type> ()
#32308 0x00005555557cd791 in rustdoc::clean::clean_qpath ()
#32309 0x000055555556f206 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32310 0x00005555556c88ce in <alloc::vec::Vec<rustdoc::clean::types::Type> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::Type, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::Ty>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#0}>>>::from_iter ()
#32311 0x000055555556f425 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32312 0x000055555554fb4d in <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<rustdoc::clean::types::GenericArg, <alloc::vec::Vec<rustdoc::clean::types::GenericArg> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::GenericArg, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::GenericArg>, <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean::{closure#1}>>>::spec_extend::{closure#0}>::{closure#0}> ()
#32313 0x000055555556fc60 in <rustc_hir::hir::GenericArgs as rustdoc::clean::Clean<rustdoc::clean::types::GenericArgs>>::clean ()
#32314 0x00005555556c291f in <alloc::vec::Vec<rustdoc::clean::types::PathSegment> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::PathSegment, core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_hir::hir::PathSegment>, <rustc_hir::hir::Path as rustdoc::clean::Clean<rustdoc::clean::types::Path>>::clean::{closure#0}>>>::from_iter ()
#32315 0x000055555556c2ae in <rustc_hir::hir::PolyTraitRef as rustdoc::clean::Clean<rustdoc::clean::types::PolyTrait>>::clean ()
#32316 0x000055555556b3de in <rustc_hir::hir::GenericBound as rustdoc::clean::Clean<core::option::Option<rustdoc::clean::types::GenericBound>>>::clean ()
#32317 0x00005555556c340c in <alloc::vec::Vec<rustdoc::clean::types::GenericBound> as alloc::vec::spec_from_iter::SpecFromIter<rustdoc::clean::types::GenericBound, core::iter::adapters::filter_map::FilterMap<core::slice::iter::Iter<rustc_hir::hir::GenericBound>, <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean::{closure#1}>>>::from_iter ()
#32318 0x000055555556f488 in <rustc_hir::hir::Ty as rustdoc::clean::Clean<rustdoc::clean::types::Type>>::clean ()
#32319 0x00005555557516af in <rustdoc::core::DocContext>::with_param_env::<alloc::vec::Vec<rustdoc::clean::types::Item>, rustdoc::clean::clean_maybe_renamed_item::{closure#1}> ()
#32320 0x00005555556b9bb2 in <alloc::vec::Vec<rustdoc::clean::types::Item> as alloc::vec::spec_extend::SpecExtend<rustdoc::clean::types::Item, core::iter::adapters::flatten::FlatMap<core::slice::iter::Iter<(&rustc_hir::hir::Item, core::option::Option<rustc_span::symbol::Symbol>)>, alloc::vec::Vec<rustdoc::clean::types::Item>, <rustdoc::visit_ast::Module as rustdoc::clean::Clean<rustdoc::clean::types::Item>>::clean::{closure#2}>>>::spec_extend ()
#32321 0x0000555555619ea6 in <rustdoc::visit_ast::Module as rustdoc::clean::Clean<rustdoc::clean::types::Item>>::clean ()
#32322 0x0000555555667865 in rustdoc::clean::utils::krate ()
#32323 0x0000555555789585 in <rustc_session::session::Session>::time::<rustdoc::clean::types::Crate, rustdoc::core::run_global_ctxt::{closure#5}> ()
#32324 0x00005555557592ca in rustdoc::core::run_global_ctxt ()
#32325 0x0000555555789bff in <rustc_session::session::Session>::time::<(rustdoc::clean::types::Crate, rustdoc::config::RenderOptions, rustdoc::formats::cache::Cache), rustdoc::main_options::{closure#0}::{closure#0}::{closure#1}::{closure#0}> ()
#32326 0x00005555557219a4 in <rustc_interface::passes::QueryContext>::enter::<rustdoc::main_options::{closure#0}::{closure#0}::{closure#1}, core::result::Result<(), rustc_errors::ErrorGuaranteed>> ()
#32327 0x000055555562502a in <rustc_interface::interface::Compiler>::enter::<rustdoc::main_options::{closure#0}::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>> ()
#32328 0x00005555554dd8aa in rustc_span::with_source_map::<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_interface::interface::create_compiler_and_run<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustdoc::main_options::{closure#0}>::{closure#1}> ()
#32329 0x000055555564e691 in rustc_interface::interface::create_compiler_and_run::<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustdoc::main_options::{closure#0}> ()
#32330 0x00005555554e1d07 in <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustdoc::main_args::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>> ()
#32331 0x000055555564f4ef in std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_pool_with_globals<rustdoc::main_args::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>> ()



#32332 0x000055555573e029 in <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_pool_with_globals<rustdoc::main_args::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} ()

#32333 0x00007ffff36ab4f3 in alloc::boxed::{impl#44}::call_once<(), dyn core::ops::function::FnOnce<(), Output=()>, alloc::alloc::Global> () at library/alloc/src/boxed.rs:1951
#32334 alloc::boxed::{impl#44}::call_once<(), alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output=()>, alloc::alloc::Global>, alloc::alloc::Global> () at library/alloc/src/boxed.rs:1951
#32335 std::sys::unix::thread::{impl#2}::new::thread_start () at library/std/src/sys/unix/thread.rs:108
#32336 0x00007ffff347f54d in ?? () from /usr/lib/libc.so.6
#32337 0x00007ffff3504b14 in clone () from /usr/lib/libc.so.6

Activity

  1. added
    I-crashIssue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics.
    T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.
    C-bugCategory: This is a bug.
    on Jun 19, 2022
  2. added a commit that references this issue on Jun 23, 2022
  3. added a commit that references this issue on Jun 24, 2022
  4. JohnTitor commented on May 1, 2023

    @JohnTitor
    Member

    Triage: This seems to be fixed in the latest nightly.
    @rustbot labels: +E-needs-test

  5. added
    E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.
    on May 1, 2023
  6. added a commit that references this issue on Sep 10, 2024
    a204f87
  7. added a commit that references this issue on Sep 10, 2024
    37b31a4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.I-crashIssue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.glacierICE tracked in rust-lang/glacier.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions