diff options
Diffstat (limited to 'tests/ui/wrong-hashset-issue-42918.rs')
-rw-r--r-- | tests/ui/wrong-hashset-issue-42918.rs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/ui/wrong-hashset-issue-42918.rs b/tests/ui/wrong-hashset-issue-42918.rs new file mode 100644 index 000000000..ef834d915 --- /dev/null +++ b/tests/ui/wrong-hashset-issue-42918.rs @@ -0,0 +1,31 @@ +// run-pass +// +#![allow(dead_code)] +// compile-flags: -O + +use std::collections::HashSet; + +#[derive(PartialEq, Debug, Hash, Eq, Clone, PartialOrd, Ord)] +enum MyEnum { + E0, + + E1, + + E2, + E3, + E4, + + E5, + E6, + E7, +} + + +fn main() { + use MyEnum::*; + let s: HashSet<_> = [E4, E1].iter().cloned().collect(); + let mut v: Vec<_> = s.into_iter().collect(); + v.sort(); + + assert_eq!([E1, E4], &v[..]); +} |