Skip to content

ICE: Region parameter out of range when substituting in region #47309

Closed
exul/matrix-rocketchat
#61
@ipetkov

Description

@ipetkov

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

Labels

A-GATsArea: Generic associated types (GATs)C-bugCategory: This is a bug.F-generic_associated_types`#![feature(generic_associated_types)]` a.k.a. GATsI-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️P-highHigh priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions