diff options
Diffstat (limited to 'src/test/codegen-units/item-collection/trait-method-default-impl.rs')
| -rw-r--r-- | src/test/codegen-units/item-collection/trait-method-default-impl.rs | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/src/test/codegen-units/item-collection/trait-method-default-impl.rs b/src/test/codegen-units/item-collection/trait-method-default-impl.rs deleted file mode 100644 index bfcdb6fa142..00000000000 --- a/src/test/codegen-units/item-collection/trait-method-default-impl.rs +++ /dev/null @@ -1,61 +0,0 @@ -// compile-flags:-Zprint-mono-items=eager -Zpolymorphize=on - -#![deny(dead_code)] -#![feature(start)] - -trait SomeTrait { - fn foo(&self) { } - fn bar<T>(&self, x: T) -> T { x } -} - -impl SomeTrait for i8 { - // take the default implementations - - // For the non-generic foo(), we should generate a codegen-item even if it - // is not called anywhere - //~ MONO_ITEM fn <i8 as SomeTrait>::foo -} - -trait SomeGenericTrait<T1> { - fn foo(&self) { } - fn bar<T2>(&self, x: T1, y: T2) {} -} - -// Non-generic impl of generic trait -impl SomeGenericTrait<u64> for i32 { - // take the default implementations - - // For the non-generic foo(), we should generate a codegen-item even if it - // is not called anywhere - //~ MONO_ITEM fn <i32 as SomeGenericTrait<T1>>::foo -} - -// Non-generic impl of generic trait -impl<T1> SomeGenericTrait<T1> for u32 { - // take the default implementations - // since nothing is monomorphic here, nothing should be generated unless used somewhere. -} - -//~ MONO_ITEM fn start -#[start] -fn start(_: isize, _: *const *const u8) -> isize { - //~ MONO_ITEM fn <i8 as SomeTrait>::bar::<char> - let _ = 1i8.bar('c'); - - //~ MONO_ITEM fn <i8 as SomeTrait>::bar::<&str> - let _ = 2i8.bar("&str"); - - //~ MONO_ITEM fn <i32 as SomeGenericTrait<u64>>::bar::<char> - 0i32.bar(0u64, 'c'); - - //~ MONO_ITEM fn <i32 as SomeGenericTrait<u64>>::bar::<&str> - 0i32.bar(0u64, "&str"); - - //~ MONO_ITEM fn <u32 as SomeGenericTrait<i8>>::bar::<&[char; 1]> - 0u32.bar(0i8, &['c']); - - //~ MONO_ITEM fn <u32 as SomeGenericTrait<i16>>::bar::<()> - 0u32.bar(0i16, ()); - - 0 -} |
