Rust: Infinite compilation time in _intern_type_list

Created on 6 Mar 2020  Â·  12Comments  Â·  Source: rust-lang/rust

I've been compiling my project with rustc 1.41.1 (f3e1a954d 2020-02-24, Linux), and it has got stuck. It usually takes a few minutes, but not this time:

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
27572 root      20   0 1871656  79956   1664 S 100.0  2.0   2580:27 rustc

Perf sample shows this:

  21.67%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] <smallvec::SmallVec<A> as core::iter::traits::collect::FromIterator<<A as smallvec::Array>::Item>>::from_iter
  13.32%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] rustc::ty::context::TyCtxt::_intern_type_list
  13.09%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] rustc::ty::structural_impls::<impl rustc::ty::fold::TypeFoldable for &rustc::ty::TyS>::super_fold_with
  11.65%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] rustc::ty::fold::TypeFoldable::fold_with
   8.66%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] hashbrown::map::RawEntryBuilderMut<K,V,S>::from_hash
   8.01%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] <rustc::ty::sty::TyKind as core::cmp::PartialEq>::eq
   7.71%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] <smallvec::SmallVec<A> as core::iter::traits::collect::FromIterator<<A as smallvec::Array>::Item>>::from_iter
   4.45%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] rustc::ty::fold::TypeFoldable::fold_with
   3.18%  rustc    rustc                                [.] free
   3.04%  rustc    librustc_driver-dcdfe48010e74f33.so  [.] rustc::ty::fold::TypeFoldable::fold_with

I've kept the process running, so let me know what I can do to provide you more info.

C-bug E-needs-bisection E-needs-mcve I-hang T-compiler

Most helpful comment

Oh, wow, then my generator compiletime improvements might have fixed this (https://github.com/rust-lang/rust/pull/68672 and https://github.com/rust-lang/rust/pull/68606). I didn't realize they'd have such a huge impact on real-world projects. Cool!

All 12 comments

Can you provide a more self-contained reproduction? I looks like this requires running make and downloading stuff.

Yeah, that's the problem — I can't. Even another compilation of the same project doesn't hang. Sometimes it's just slow or very slow. I suspect it's hitting some O(n^2) case somewhere, but perhaps depending on order of things in hash tables or something non-deterministic.

I've just noticed that this compilation actually was from stable, not from nightly.

there are only 2 threads, one is asleep. The other:

 bt
* thread #2: tid = 27575, 0x00007fbdf5d96774 librustc_driver-dcdfe48010e74f33.so`_ZN63_$LT$rustc..ty..sty..TyKind$u20$as$u20$core..cmp..PartialEq$GT$2eq17h6f872122006063b6E.llvm.8369515687695553918 + 980, name = 'rustc', stop reason = signal SIGSTOP
  * frame #0: 0x00007fbdf5d96774 librustc_driver-dcdfe48010e74f33.so`_ZN63_$LT$rustc..ty..sty..TyKind$u20$as$u20$core..cmp..PartialEq$GT$2eq17h6f872122006063b6E.llvm.8369515687695553918 + 980
    frame #1: 0x00007fbdf5d86f23 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 931
    frame #2: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #3: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #4: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #5: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #6: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #7: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #8: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #9: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #10: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #11: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #12: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #13: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #14: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #15: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #16: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #17: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #18: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #19: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #20: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #21: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #22: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #23: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #24: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #25: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #26: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #27: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #28: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #29: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #30: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #31: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #32: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #33: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #34: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #35: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #36: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #37: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #38: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #39: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #40: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #41: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #42: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #43: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #44: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #45: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #46: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #47: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #48: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #49: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #50: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #51: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #52: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #53: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #54: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #55: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #56: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #57: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #58: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #59: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #60: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #61: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #62: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #63: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #64: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #65: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #66: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #67: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #68: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #69: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #70: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #71: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #72: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #73: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #74: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #75: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #76: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #77: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #78: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #79: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #80: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #81: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #82: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #83: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #84: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #85: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #86: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #87: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #88: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #89: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #90: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #91: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #92: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #93: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #94: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #95: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #96: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #97: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #98: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #99: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #100: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #101: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #102: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #103: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #104: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #105: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #106: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #107: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #108: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #109: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #110: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #111: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #112: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #113: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #114: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #115: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #116: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #117: 0x00007fbdf5d86cf3 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 371
    frame #118: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #119: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #120: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #121: 0x00007fbdf5d86d55 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 469
    frame #122: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #123: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #124: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #125: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #126: 0x00007fbdf5d774a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 544
    frame #127: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #128: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #129: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #130: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #131: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #132: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #133: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #134: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #135: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #136: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #137: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #138: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #139: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #140: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #141: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #142: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #143: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #144: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #145: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #146: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #147: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #148: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #149: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #150: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #151: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #152: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #153: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #154: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #155: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #156: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #157: 0x00007fbdf5d86cf3 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 371
    frame #158: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #159: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #160: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #161: 0x00007fbdf5d86d55 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 469
    frame #162: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #163: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #164: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #165: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #166: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #167: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #168: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #169: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #170: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #171: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #172: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #173: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #174: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #175: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #176: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #177: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #178: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #179: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #180: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #181: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #182: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #183: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #184: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #185: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #186: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #187: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #188: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #189: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #190: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #191: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #192: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #193: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #194: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #195: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #196: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #197: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #198: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #199: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #200: 0x00007fbdf5d774a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 544
    frame #201: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #202: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #203: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #204: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #205: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #206: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #207: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #208: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #209: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #210: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #211: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #212: 0x00007fbdf5c3af24 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 292
    frame #213: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #214: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #215: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #216: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #217: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #218: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #219: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #220: 0x00007fbdf5d86bbf librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 63
    frame #221: 0x00007fbdf608d83b librustc_driver-dcdfe48010e74f33.so`rustc::ty::util::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::try_expand_impl_trait_type::OpaqueTypeExpander::expand_opaque_ty::h3bba6ae17fe7332e + 603
    frame #222: 0x00007fbdf608d819 librustc_driver-dcdfe48010e74f33.so`rustc::ty::util::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::try_expand_impl_trait_type::OpaqueTypeExpander::expand_opaque_ty::h3bba6ae17fe7332e + 569
    frame #223: 0x00007fbdf5c3af0e librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 270
    frame #224: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #225: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #226: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #227: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #228: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #229: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #230: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #231: 0x00007fbdf608d617 librustc_driver-dcdfe48010e74f33.so`rustc::ty::util::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::try_expand_impl_trait_type::OpaqueTypeExpander::expand_opaque_ty::h3bba6ae17fe7332e + 55
    frame #232: 0x00007fbdf608d819 librustc_driver-dcdfe48010e74f33.so`rustc::ty::util::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::try_expand_impl_trait_type::OpaqueTypeExpander::expand_opaque_ty::h3bba6ae17fe7332e + 569
    frame #233: 0x00007fbdf5c3af0e librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::hdd0a32c6216a8ac6 + 270
    frame #234: 0x00007fbdf5d73b8c librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h1cd7ea8d6967a60c + 60
    frame #235: 0x00007fbdf5d86db6 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 566
    frame #236: 0x00007fbdf5bef9a0 librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h8e43a941b3aa2dcc + 112
    frame #237: 0x00007fbdf5c1b9e8 librustc_driver-dcdfe48010e74f33.so`_$LT$smallvec..SmallVec$LT$A$GT$$u20$as$u20$core..iter..traits..collect..FromIterator$LT$$LT$A$u20$as$u20$smallvec..Array$GT$..Item$GT$$GT$::from_iter::h701cd4d15c9062c1 + 216
    frame #238: 0x00007fbdf5d7736a librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 234
    frame #239: 0x00007fbdf5d86d87 librustc_driver-dcdfe48010e74f33.so`rustc::ty::structural_impls::_$LT$impl$u20$rustc..ty..fold..TypeFoldable$u20$for$u20$$RF$rustc..ty..TyS$GT$::super_fold_with::hc2c017855d7c3071 + 519
    frame #240: 0x00007fbdf5d7757b librustc_driver-dcdfe48010e74f33.so`rustc::ty::fold::TypeFoldable::fold_with::h9484cffb72971c0b + 763
    frame #241: 0x00007fbdf608d617 librustc_driver-dcdfe48010e74f33.so`rustc::ty::util::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::try_expand_impl_trait_type::OpaqueTypeExpander::expand_opaque_ty::h3bba6ae17fe7332e + 55
    frame #242: 0x00007fbdf608d819 librustc_driver-dcdfe48010e74f33.so`rustc::ty::util::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::try_expand_impl_trait_type::OpaqueTypeExpander::expand_opaque_ty::h3bba6ae17fe7332e + 569
    frame #243: 0x00007fbdf629b7c1 librustc_driver-dcdfe48010e74f33.so`rustc::ty::util::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::try_expand_impl_trait_type::h8b6f5fdee066aa6e + 177
    frame #244: 0x00007fbdf4aed828 librustc_driver-dcdfe48010e74f33.so`_ZN12rustc_typeck5check15check_item_type17h54fbb96f0efba342E.llvm.2304501414232201492 + 4104
    frame #245: 0x00007fbdf4b14f36 librustc_driver-dcdfe48010e74f33.so`rustc::hir::map::Map::visit_item_likes_in_module::h3d0e95327c5c45e7 + 278
    frame #246: 0x00007fbdf4aea1d4 librustc_driver-dcdfe48010e74f33.so`_ZN12rustc_typeck5check20check_mod_item_types17ha319bf93199e0e43E.llvm.2304501414232201492 + 20
    frame #247: 0x00007fbdf4cd269a librustc_driver-dcdfe48010e74f33.so`rustc::ty::query::__query_compute::check_mod_item_types::h32dd855f70fff23a + 106
    frame #248: 0x00007fbdf4c0b1ab librustc_driver-dcdfe48010e74f33.so`rustc::ty::query::_$LT$impl$u20$rustc..ty..query..config..QueryAccessors$u20$for$u20$rustc..ty..query..queries..check_mod_item_types$GT$::compute::h2585c216270b5edd + 27
    frame #249: 0x00007fbdf4b9a2fd librustc_driver-dcdfe48010e74f33.so`_ZN5rustc9dep_graph5graph8DepGraph14with_task_impl17h1fd3e518a9777d03E.llvm.11505891816584312476 + 221
    frame #250: 0x00007fbdf4c650fe librustc_driver-dcdfe48010e74f33.so`rustc::ty::query::plumbing::_$LT$impl$u20$rustc..ty..context..TyCtxt$GT$::get_query::ha3ba6731d1250408 + 3694

Unfortunately lldb doesn't see any variables.

Does it happen on kitchen_sink? If so I can reproduce I think.

Ah, no, that seems to take a pathological time in item-types checking (which is unusual), but finished after ~1 minute in that phase.

Oh, neat, that one is almost completely gone on nightly :)

reindex_crates and front_end also compile excruciatingly slowly, is that normal? This does not seem to be an issue on nightly, maybe you can use that instead (and report back when the issue reappears there).

Yeah, sorry. I thought it (also) happened on nightly this time, but seems that my deploy didn't pick the right toolchain. It is tolerable on nightly.

The compilation is painfully slow. I think it got worse after I added async/await. I've ended up creating futures that have 80KB of state :)

Thanks for having a look. I'll try to make a more specific report later.

Oh, wow, then my generator compiletime improvements might have fixed this (https://github.com/rust-lang/rust/pull/68672 and https://github.com/rust-lang/rust/pull/68606). I didn't realize they'd have such a huge impact on real-world projects. Cool!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

pedrohjordao picture pedrohjordao  Â·  3Comments

drewcrawford picture drewcrawford  Â·  3Comments

mcarton picture mcarton  Â·  3Comments

dtolnay picture dtolnay  Â·  3Comments

cuviper picture cuviper  Â·  3Comments