aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/rust/compile/issue-1173.rs
blob: 5c2a9173241d38fdb45d78cda9aeae4b2b363067 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// { dg-additional-options "-w" }

#![feature(intrinsics)]

mod mem {
    extern "rust-intrinsic" {
        pub fn transmute<U, V>(_: U) -> V;
    }
}

pub trait Hasher {
    fn write(&mut self, bytes: &[u8]);
    fn write_u16(&mut self, i: u16) {
        self.write(unsafe { &mem::transmute::<_, [u8; 2]>(i) })
    }
}

pub struct SipHasher;

impl Hasher for SipHasher {
    #[inline]
    fn write(&mut self, msg: &[u8]) {}
}