mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-24 15:54:15 +00:00
Auto merge of #5538 - csmoe:rustup, r=phansch
rustup: rust-lang/rust#71628 cc https://github.com/rust-lang/rust/issues/71608 changelog: none
This commit is contained in:
commit
f2486b3d35
@ -111,7 +111,7 @@ impl<'a, 'tcx> LateLintPass<'a, 'tcx> for NeedlessPassByValue {
|
||||
|
||||
let fn_def_id = cx.tcx.hir().local_def_id(hir_id);
|
||||
|
||||
let preds = traits::elaborate_predicates(cx.tcx, cx.param_env.caller_bounds.to_vec())
|
||||
let preds = traits::elaborate_predicates(cx.tcx, cx.param_env.caller_bounds.iter().copied())
|
||||
.filter(|p| !p.is_global())
|
||||
.filter_map(|obligation| {
|
||||
if let ty::Predicate::Trait(poly_trait_ref, _) = obligation.predicate {
|
||||
|
@ -1384,13 +1384,12 @@ pub fn is_trait_impl_item(cx: &LateContext<'_, '_>, hir_id: HirId) -> bool {
|
||||
/// ```
|
||||
pub fn fn_has_unsatisfiable_preds(cx: &LateContext<'_, '_>, did: DefId) -> bool {
|
||||
use rustc_trait_selection::traits;
|
||||
let predicates = cx
|
||||
.tcx
|
||||
let predicates =
|
||||
cx.tcx
|
||||
.predicates_of(did)
|
||||
.predicates
|
||||
.iter()
|
||||
.filter_map(|(p, _)| if p.is_global() { Some(*p) } else { None })
|
||||
.collect();
|
||||
.filter_map(|(p, _)| if p.is_global() { Some(*p) } else { None });
|
||||
!traits::normalize_and_test_predicates(
|
||||
cx.tcx,
|
||||
traits::elaborate_predicates(cx.tcx, predicates)
|
||||
|
Loading…
Reference in New Issue
Block a user