add ensure_sufficient_stack
to the new solver
This commit is contained in:
parent
ae3c353067
commit
c0468313cb
1 changed files with 21 additions and 18 deletions
|
@ -1,3 +1,4 @@
|
||||||
|
use rustc_data_structures::stack::ensure_sufficient_stack;
|
||||||
use rustc_hir::def_id::{DefId, LocalDefId};
|
use rustc_hir::def_id::{DefId, LocalDefId};
|
||||||
use rustc_infer::infer::at::ToTrace;
|
use rustc_infer::infer::at::ToTrace;
|
||||||
use rustc_infer::infer::canonical::CanonicalVarValues;
|
use rustc_infer::infer::canonical::CanonicalVarValues;
|
||||||
|
@ -305,6 +306,7 @@ impl<'a, 'tcx> EvalCtxt<'a, 'tcx> {
|
||||||
// Deal with overflow, caching, and coinduction.
|
// Deal with overflow, caching, and coinduction.
|
||||||
//
|
//
|
||||||
// The actual solver logic happens in `ecx.compute_goal`.
|
// The actual solver logic happens in `ecx.compute_goal`.
|
||||||
|
ensure_sufficient_stack(|| {
|
||||||
search_graph.with_new_goal(
|
search_graph.with_new_goal(
|
||||||
tcx,
|
tcx,
|
||||||
canonical_input,
|
canonical_input,
|
||||||
|
@ -323,6 +325,7 @@ impl<'a, 'tcx> EvalCtxt<'a, 'tcx> {
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Recursively evaluates `goal`, returning whether any inference vars have
|
/// Recursively evaluates `goal`, returning whether any inference vars have
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue