Rollup merge of #118246 - fee1-dead-contrib:rm-hack, r=compiler-errors
Remove a hack for effects Fallback was implemented in #115727, which addresses the inference errors mentioned in the comments.
This commit is contained in:
commit
592ee12245
@ -526,14 +526,9 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
|
|||||||
_ => self.instantiate_value_path(segs, opt_ty, res, expr.span, expr.hir_id).0,
|
_ => self.instantiate_value_path(segs, opt_ty, res, expr.span, expr.hir_id).0,
|
||||||
};
|
};
|
||||||
|
|
||||||
if let ty::FnDef(did, callee_args) = *ty.kind() {
|
if let ty::FnDef(did, _) = *ty.kind() {
|
||||||
let fn_sig = ty.fn_sig(tcx);
|
let fn_sig = ty.fn_sig(tcx);
|
||||||
|
|
||||||
// HACK: whenever we get a FnDef in a non-const context, enforce effects to get the
|
|
||||||
// default `host = true` to avoid inference errors later.
|
|
||||||
if tcx.hir().body_const_context(self.body_id).is_none() {
|
|
||||||
self.enforce_context_effects(expr.hir_id, qpath.span(), did, callee_args);
|
|
||||||
}
|
|
||||||
if tcx.fn_sig(did).skip_binder().abi() == RustIntrinsic
|
if tcx.fn_sig(did).skip_binder().abi() == RustIntrinsic
|
||||||
&& tcx.item_name(did) == sym::transmute
|
&& tcx.item_name(did) == sym::transmute
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user