1 // compile-flags:-Zprint-mono-items=eager
8 fn bar<T>(&self, x: T);
11 impl SomeTrait for i64 {
13 //~ MONO_ITEM fn <i64 as SomeTrait>::foo
16 fn bar<T>(&self, _: T) {}
19 impl SomeTrait for i32 {
21 //~ MONO_ITEM fn <i32 as SomeTrait>::foo
24 fn bar<T>(&self, _: T) {}
27 pub trait SomeGenericTrait<T> {
29 fn bar<T2>(&self, x: T, y: T2);
32 // Concrete impl of generic trait
33 impl SomeGenericTrait<u32> for f64 {
35 //~ MONO_ITEM fn <f64 as SomeGenericTrait<u32>>::foo
36 fn foo(&self, _: u32) {}
38 fn bar<T2>(&self, _: u32, _: T2) {}
41 // Generic impl of generic trait
42 impl<T> SomeGenericTrait<T> for f32 {
44 fn foo(&self, _: T) {}
45 fn bar<T2>(&self, _: T, _: T2) {}
48 //~ MONO_ITEM fn start
50 fn start(_: isize, _: *const *const u8) -> isize {
51 //~ MONO_ITEM fn <i32 as SomeTrait>::bar::<char>
54 //~ MONO_ITEM fn <f64 as SomeGenericTrait<u32>>::bar::<&str>
55 0f64.bar(0u32, "&str");
57 //~ MONO_ITEM fn <f64 as SomeGenericTrait<u32>>::bar::<()>
60 //~ MONO_ITEM fn <f32 as SomeGenericTrait<char>>::foo
63 //~ MONO_ITEM fn <f32 as SomeGenericTrait<i64>>::foo
66 //~ MONO_ITEM fn <f32 as SomeGenericTrait<u32>>::bar::<()>
69 //~ MONO_ITEM fn <f32 as SomeGenericTrait<&str>>::bar::<&str>
70 0f32.bar("&str", "&str");