fn check_fn_or_method<'fcx, 'tcx>( fcx: &FnCtxt<'fcx, 'tcx>, span: Span, sig: PolyFnSig<'tcx>, hir_decl: &FnDecl<'_>, def_id: LocalDefId, implied_bounds: &mut FxHashSet<Ty<'tcx>>)