1 #![feature(intrinsics)]
2
3 extern "rust-intrinsic" {
4 // Real example from libcore
type_id<T: ?Sized + 'static>() -> u645 fn type_id<T: ?Sized + 'static>() -> u64;
6
7 // Silent bounds made explicit to make sure they are actually
8 // resolved.
transmute<T: Sized, U: Sized>(val: T) -> U9 fn transmute<T: Sized, U: Sized>(val: T) -> U;
10
11 // Bounds aren't checked right now, so this should work
12 // even though it's incorrect.
size_of<T: Clone>() -> usize13 fn size_of<T: Clone>() -> usize;
14
15 // Unresolved bounds should still error.
align_of<T: NoSuchTrait>() -> usize16 fn align_of<T: NoSuchTrait>() -> usize;
17 //~^ ERROR cannot find trait `NoSuchTrait` in this scope
18 }
19
main()20 fn main() {}
21