diff options
| -rw-r--r-- | src/librustc_mir/monomorphize/collector.rs | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/librustc_mir/monomorphize/collector.rs b/src/librustc_mir/monomorphize/collector.rs index acf438dc66b..ee0f9119544 100644 --- a/src/librustc_mir/monomorphize/collector.rs +++ b/src/librustc_mir/monomorphize/collector.rs @@ -1143,6 +1143,11 @@ fn create_mono_items_for_default_impls<'tcx>( def_id_to_string(tcx, impl_def_id)); if let Some(trait_ref) = tcx.impl_trait_ref(impl_def_id) { + let param_env = ty::ParamEnv::reveal_all(); + let trait_ref = tcx.normalize_erasing_regions( + param_env, + trait_ref, + ); let overridden_methods: FxHashSet<_> = impl_item_refs.iter() .map(|iiref| iiref.ident.modern()) @@ -1165,12 +1170,6 @@ fn create_mono_items_for_default_impls<'tcx>( } } }); - - let param_env = ty::ParamEnv::reveal_all(); - let substs = tcx.normalize_erasing_regions( - param_env, - substs, - ); let instance = ty::Instance::resolve(tcx, param_env, method.def_id, |
