rust/tests/ui/structs-enums/empty-tag.rs

23 lines
450 B
Rust

//@ run-pass
#![allow(unused_braces)]
#![allow(non_camel_case_types)]
#[derive(Copy, Clone, Debug)]
enum chan { chan_t, }
impl PartialEq for chan {
fn eq(&self, other: &chan) -> bool {
((*self) as usize) == ((*other) as usize)
}
fn ne(&self, other: &chan) -> bool { !(*self).eq(other) }
}
fn wrapper3(i: chan) {
assert_eq!(i, chan::chan_t);
}
pub fn main() {
let wrapped = {||wrapper3(chan::chan_t)};
wrapped();
}