| //@ run-pass | |
| // Test that we can do shifts by any integral type. | |
| struct Panolpy { | |
| i8: i8, | |
| i16: i16, | |
| i32: i32, | |
| i64: i64, | |
| isize: isize, | |
| u8: u8, | |
| u16: u16, | |
| u32: u32, | |
| u64: u64, | |
| usize: usize, | |
| } | |
| fn foo(p: &Panolpy) { | |
| assert_eq!(22 >> p.i8, 11); | |
| assert_eq!(22 >> p.i16, 11); | |
| assert_eq!(22 >> p.i32, 11); | |
| assert_eq!(22 >> p.i64, 11); | |
| assert_eq!(22 >> p.isize, 11); | |
| assert_eq!(22 >> p.u8, 11); | |
| assert_eq!(22 >> p.u16, 11); | |
| assert_eq!(22 >> p.u32, 11); | |
| assert_eq!(22 >> p.u64, 11); | |
| assert_eq!(22 >> p.usize, 11); | |
| } | |
| fn main() { | |
| let p = Panolpy { | |
| i8: 1, | |
| i16: 1, | |
| i32: 1, | |
| i64: 1, | |
| isize: 1, | |
| u8: 1, | |
| u16: 1, | |
| u32: 1, | |
| u64: 1, | |
| usize: 1, | |
| }; | |
| foo(&p) | |
| } |