1 // normalize-stderr-32bit: "`&str` \(64 bits\)" -> "`&str` ($$STR bits)"
2 // normalize-stderr-64bit: "`&str` \(128 bits\)" -> "`&str` ($$STR bits)"
6 #![feature(untagged_unions)]
7 use std::mem::transmute;
9 pub trait TypeConstructor<'a> {
13 unsafe fn transmute_lifetime<'a, 'b, C>(x: <C as TypeConstructor<'a>>::T)
14 -> <C as TypeConstructor<'b>>::T
15 where for<'z> C: TypeConstructor<'z> {
16 transmute(x) //~ ERROR cannot transmute between types of different sizes
20 let x: u8 = transmute(10u16); //~ ERROR cannot transmute between types of different sizes
24 let x: u8 = transmute("test"); //~ ERROR cannot transmute between types of different sizes
29 let x: Foo = transmute(10); //~ ERROR cannot transmute between types of different sizes