Description
ICE: librustc/ty/subst.rs:424: Region parameter out of range when substituting in region 'a (root type=None) (index=2)
Started getting an ICE on nightly linux builds in travis for my crate while building various integration tests (I've seen builds fail on different integration tests each time). The ICE has reliably occurred on travis during each restart, however, I've been unable to reproduce it locally via travis docker image (so I can't even begin to attempt to minify my source to something that triggers the error). As far as I can tell, this started with rustc 1.24.0-nightly (8e7a609 2018-01-04).
Sample build log can be found here.
Happy to provide more logs build info as needed!
Meta
rustc 1.25.0-nightly (61452e5 2018-01-09)
Backtrace:
thread 'rustc' panicked at 'Box<Any>', librustc_errors/lib.rs:455:9
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
stack backtrace:
0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: std::sys_common::backtrace::print
at libstd/sys_common/backtrace.rs:68
at libstd/sys_common/backtrace.rs:57
2: std::panicking::default_hook::{{closure}}
at libstd/panicking.rs:381
3: std::panicking::default_hook
at libstd/panicking.rs:391
4: std::panicking::rust_panic_with_hook
at libstd/panicking.rs:577
5: std::panicking::begin_panic
6: rustc_errors::Handler::span_bug
7: <std::thread::local::LocalKey<T>>::with
8: rustc::ty::context::tls::with_opt
9: rustc::session::opt_span_bug_fmt
10: rustc::session::span_bug_fmt
11: <rustc::ty::subst::SubstFolder<'a, 'gcx, 'tcx> as rustc::ty::fold::TypeFolder<'gcx, 'tcx>>::fold_region
12: rustc::ty::fold::TypeFoldable::fold_with
13: rustc::ty::fold::TypeFoldable::fold_with
14: rustc::traits::substitute_normalize_and_test_predicates
15: rustc::ty::maps::<impl rustc::ty::maps::queries::substitute_normalize_and_test_predicates<'tcx>>::compute_result
16: rustc::dep_graph::graph::DepGraph::with_task_impl
17: rustc_errors::Handler::track_diagnostics
18: rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check
19: rustc::ty::maps::<impl rustc::ty::maps::queries::substitute_normalize_and_test_predicates<'tcx>>::force
20: rustc::ty::maps::<impl rustc::ty::maps::queries::substitute_normalize_and_test_predicates<'tcx>>::try_get
21: rustc::ty::maps::TyCtxtAt::substitute_normalize_and_test_predicates
22: rustc::ty::maps::<impl rustc::ty::context::TyCtxt<'a, 'tcx, 'lcx>>::substitute_normalize_and_test_predicates
23: <rustc_mir::monomorphize::collector::RootCollector<'b, 'a, 'v> as rustc::hir::itemlikevisit::ItemLikeVisitor<'v>>::visit_item
24: rustc::hir::Crate::visit_all_item_likes
25: rustc_mir::monomorphize::collector::collect_crate_mono_items
26: rustc::util::common::time
27: rustc_trans::base::collect_and_partition_translation_items
28: rustc::dep_graph::graph::DepGraph::with_task_impl
29: rustc_errors::Handler::track_diagnostics
30: rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check
31: rustc::ty::maps::<impl rustc::ty::maps::queries::collect_and_partition_translation_items<'tcx>>::force
32: rustc::ty::maps::<impl rustc::ty::maps::queries::collect_and_partition_translation_items<'tcx>>::try_get
33: rustc::ty::maps::TyCtxtAt::collect_and_partition_translation_items
34: rustc::ty::maps::<impl rustc::ty::context::TyCtxt<'a, 'tcx, 'lcx>>::collect_and_partition_translation_items
35: rustc_trans::base::trans_crate
36: <rustc_trans::LlvmTransCrate as rustc_trans_utils::trans_crate::TransCrate>::trans_crate
37: rustc::util::common::time
38: rustc_driver::driver::phase_4_translate_to_llvm
39: rustc_driver::driver::compile_input::{{closure}}
40: <std::thread::local::LocalKey<T>>::with
41: <std::thread::local::LocalKey<T>>::with
42: rustc::ty::context::TyCtxt::create_and_enter
43: rustc_driver::driver::compile_input
44: rustc_driver::run_compiler
Metadata
Metadata
Assignees
Labels
Area: Generic associated types (GATs)Category: This is a bug.`#![feature(generic_associated_types)]` a.k.a. GATsIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️High priorityRelevant to the compiler team, which will review and decide on the PR/issue.Performance or correctness regression from one stable version to another.