blob: f9ab990b80451c7cd3ef21dcb0e9c6d52291f464 [file]
// { dg-additional-options "-w" }
#![feature(no_core)]
#![no_core]
#![feature(intrinsics)]
#![feature(lang_items)]
#[lang = "sized"]
pub trait Sized {}
mod mem {
extern "rust-intrinsic" {
fn size_of<T>() -> usize;
fn transmute<U, V>(_: U) -> V;
}
}
impl u16 {
fn to_ne_bytes(self) -> [u8; mem::size_of::<Self>()] {
unsafe { mem::transmute(self) }
}
}
pub trait Hasher {
fn finish(&self) -> u64;
fn write(&mut self, bytes: &[u8]);
fn write_u8(&mut self, i: u8) {
self.write(&[i])
}
fn write_i8(&mut self, i: i8) {
self.write_u8(i as u8)
}
fn write_u16(&mut self, i: u16) {
self.write(&i.to_ne_bytes())
}
fn write_i16(&mut self, i: i16) {
self.write_u16(i as u16)
}
}
pub struct SipHasher;
impl Hasher for SipHasher {
#[inline]
fn write(&mut self, msg: &[u8]) {}
#[inline]
fn finish(&self) -> u64 {
0
}
}