2023-07-27 06:40:22 -05:00
|
|
|
use std::collections::HashSet;
|
|
|
|
|
|
|
|
// See rust-lang/rust-clippy#2774.
|
|
|
|
|
|
|
|
#[derive(Eq, PartialEq, Debug, Hash)]
|
|
|
|
pub struct Bar {
|
|
|
|
foo: Foo,
|
|
|
|
}
|
|
|
|
|
|
|
|
#[derive(Eq, PartialEq, Debug, Hash)]
|
|
|
|
pub struct Foo;
|
|
|
|
|
|
|
|
#[allow(clippy::implicit_hasher)]
|
|
|
|
// This should not cause a "cannot relate bound region" ICE.
|
|
|
|
pub fn add_barfoos_to_foos(bars: &HashSet<&Bar>) {
|
2023-07-28 14:35:48 -05:00
|
|
|
//~^ ERROR: the following explicit lifetimes could be elided: 'a
|
|
|
|
//~| NOTE: `-D clippy::needless-lifetimes` implied by `-D warnings`
|
2023-07-27 06:40:22 -05:00
|
|
|
let mut foos = HashSet::new();
|
|
|
|
foos.extend(bars.iter().map(|b| &b.foo));
|
|
|
|
}
|
|
|
|
|
|
|
|
#[allow(clippy::implicit_hasher)]
|
|
|
|
// Also, this should not cause a "cannot relate bound region" ICE.
|
|
|
|
pub fn add_barfoos_to_foos2(bars: &HashSet<&Bar>) {
|
|
|
|
let mut foos = HashSet::new();
|
|
|
|
foos.extend(bars.iter().map(|b| &b.foo));
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {}
|