rust/tests/ui/crashes/ice-2774.rs

28 lines
684 B
Rust
Raw Normal View History

use std::collections::HashSet;
2019-01-31 02:15:29 +01:00
// See rust-lang/rust-clippy#2774.
#[derive(Eq, PartialEq, Debug, Hash)]
pub struct Bar {
foo: Foo,
}
#[derive(Eq, PartialEq, Debug, Hash)]
pub struct Foo {}
2018-07-30 11:33:44 +02:00
#[allow(clippy::implicit_hasher)]
2019-01-31 02:15:29 +01:00
// This should not cause a "cannot relate bound region" ICE.
pub fn add_barfoos_to_foos<'a>(bars: &HashSet<&'a Bar>) {
let mut foos = HashSet::new();
2018-12-09 23:26:16 +01:00
foos.extend(bars.iter().map(|b| &b.foo));
}
2018-07-30 11:33:44 +02:00
#[allow(clippy::implicit_hasher)]
2019-01-31 02:15:29 +01:00
// 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();
2018-12-09 23:26:16 +01:00
foos.extend(bars.iter().map(|b| &b.foo));
}
fn main() {}