fn check_impl<'tcx>(
    tcx: TyCtxt<'tcx>,
    item: &'tcx Item<'tcx>,
    ast_self_ty: &Ty<'_>,
    ast_trait_ref: &Option<TraitRef<'_>>
)