fallout: update codegen-units tests
This commit is contained in:
parent
5e26508744
commit
6056c5fbed
|
@ -19,12 +19,12 @@ extern crate cgu_extern_closures;
|
|||
//~ TRANS_ITEM fn cross_crate_closures::main[0]
|
||||
fn main() {
|
||||
|
||||
//~ TRANS_ITEM fn cgu_extern_closures[0]::inlined_fn[0]
|
||||
//~ TRANS_ITEM fn cgu_extern_closures[0]::inlined_fn[0]::{{closure}}[0]
|
||||
//~ TRANS_ITEM fn cgu_extern_closures::inlined_fn[0]
|
||||
//~ TRANS_ITEM fn cgu_extern_closures::inlined_fn[0]::{{closure}}[0]
|
||||
let _ = cgu_extern_closures::inlined_fn(1, 2);
|
||||
|
||||
//~ TRANS_ITEM fn cgu_extern_closures[0]::inlined_fn_generic[0]<i32>
|
||||
//~ TRANS_ITEM fn cgu_extern_closures[0]::inlined_fn_generic[0]::{{closure}}[0]<i32>
|
||||
//~ TRANS_ITEM fn cgu_extern_closures::inlined_fn_generic[0]<i32>
|
||||
//~ TRANS_ITEM fn cgu_extern_closures::inlined_fn_generic[0]::{{closure}}[0]<i32>
|
||||
let _ = cgu_extern_closures::inlined_fn_generic(3, 4, 5i32);
|
||||
|
||||
// Nothing should be generated for this call, we just link to the instance instance
|
||||
|
|
|
@ -19,12 +19,12 @@ extern crate cgu_generic_function;
|
|||
//~ TRANS_ITEM fn cross_crate_generic_functions::main[0]
|
||||
fn main()
|
||||
{
|
||||
//~ TRANS_ITEM fn cgu_generic_function[0]::bar[0]<u32>
|
||||
//~ TRANS_ITEM fn cgu_generic_function[0]::foo[0]<u32>
|
||||
//~ TRANS_ITEM fn cgu_generic_function::bar[0]<u32>
|
||||
//~ TRANS_ITEM fn cgu_generic_function::foo[0]<u32>
|
||||
let _ = cgu_generic_function::foo(1u32);
|
||||
|
||||
//~ TRANS_ITEM fn cgu_generic_function[0]::bar[0]<u64>
|
||||
//~ TRANS_ITEM fn cgu_generic_function[0]::foo[0]<u64>
|
||||
//~ TRANS_ITEM fn cgu_generic_function::bar[0]<u64>
|
||||
//~ TRANS_ITEM fn cgu_generic_function::foo[0]<u64>
|
||||
let _ = cgu_generic_function::foo(2u64);
|
||||
|
||||
// This should not introduce a codegen item
|
||||
|
|
|
@ -29,31 +29,31 @@ fn main()
|
|||
// Currently, no object code is generated for trait methods with default
|
||||
// implemenations, unless they are actually called from somewhere. Therefore
|
||||
// we cannot import the implementations and have to create our own inline.
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::Trait[0]::with_default_impl[0]<u32>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::Trait[0]::with_default_impl[0]<u32>
|
||||
let _ = Trait::with_default_impl(0u32);
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::Trait[0]::with_default_impl[0]<char>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::Trait[0]::with_default_impl[0]<char>
|
||||
let _ = Trait::with_default_impl('c');
|
||||
|
||||
|
||||
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::Trait[0]::with_default_impl_generic[0]<u32, &str>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::Trait[0]::with_default_impl_generic[0]<u32, &str>
|
||||
let _ = Trait::with_default_impl_generic(0u32, "abc");
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::Trait[0]::with_default_impl_generic[0]<u32, bool>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::Trait[0]::with_default_impl_generic[0]<u32, bool>
|
||||
let _ = Trait::with_default_impl_generic(0u32, false);
|
||||
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::Trait[0]::with_default_impl_generic[0]<char, i16>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::Trait[0]::with_default_impl_generic[0]<char, i16>
|
||||
let _ = Trait::with_default_impl_generic('x', 1i16);
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::Trait[0]::with_default_impl_generic[0]<char, i32>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::Trait[0]::with_default_impl_generic[0]<char, i32>
|
||||
let _ = Trait::with_default_impl_generic('y', 0i32);
|
||||
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::u32.Trait[0]::without_default_impl_generic[0]<char>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::{{impl}}[1]::without_default_impl_generic[0]<char>
|
||||
let _: (u32, char) = Trait::without_default_impl_generic('c');
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::u32.Trait[0]::without_default_impl_generic[0]<bool>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::{{impl}}[1]::without_default_impl_generic[0]<bool>
|
||||
let _: (u32, bool) = Trait::without_default_impl_generic(false);
|
||||
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::char.Trait[0]::without_default_impl_generic[0]<char>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::{{impl}}[0]::without_default_impl_generic[0]<char>
|
||||
let _: (char, char) = Trait::without_default_impl_generic('c');
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method[0]::char.Trait[0]::without_default_impl_generic[0]<bool>
|
||||
//~ TRANS_ITEM fn cgu_export_trait_method::{{impl}}[0]::without_default_impl_generic[0]<bool>
|
||||
let _: (char, bool) = Trait::without_default_impl_generic(false);
|
||||
}
|
||||
|
||||
|
|
|
@ -49,17 +49,17 @@ struct NonGenericWithDrop(i32);
|
|||
|
||||
impl Drop for NonGenericWithDrop {
|
||||
fn drop(&mut self) {}
|
||||
//~ TRANS_ITEM fn generic_drop_glue::NonGenericWithDrop.Drop[0]::drop[0]
|
||||
//~ TRANS_ITEM fn generic_drop_glue::{{impl}}[2]::drop[0]
|
||||
}
|
||||
|
||||
//~ TRANS_ITEM fn generic_drop_glue::main[0]
|
||||
fn main() {
|
||||
//~ TRANS_ITEM drop-glue generic_drop_glue::StructWithDrop[0]<i8, char>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::StructWithDrop<T1, T2>.Drop[0]::drop[0]<i8, char>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::{{impl}}[0]::drop[0]<i8, char>
|
||||
let _ = StructWithDrop { x: 0i8, y: 'a' }.x;
|
||||
|
||||
//~ TRANS_ITEM drop-glue generic_drop_glue::StructWithDrop[0]<&str, generic_drop_glue::NonGenericNoDrop[0]>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::StructWithDrop<T1, T2>.Drop[0]::drop[0]<&str, generic_drop_glue::NonGenericNoDrop[0]>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::{{impl}}[0]::drop[0]<&str, generic_drop_glue::NonGenericNoDrop[0]>
|
||||
let _ = StructWithDrop { x: "&str", y: NonGenericNoDrop(0) }.y;
|
||||
|
||||
// Should produce no drop glue
|
||||
|
@ -71,14 +71,14 @@ fn main() {
|
|||
let _ = StructNoDrop { x: NonGenericWithDrop(0), y: 0f64 }.y;
|
||||
|
||||
//~ TRANS_ITEM drop-glue generic_drop_glue::EnumWithDrop[0]<i32, i64>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::EnumWithDrop<T1, T2>.Drop[0]::drop[0]<i32, i64>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::{{impl}}[1]::drop[0]<i32, i64>
|
||||
let _ = match EnumWithDrop::A::<i32, i64>(0) {
|
||||
EnumWithDrop::A(x) => x,
|
||||
EnumWithDrop::B(x) => x as i32
|
||||
};
|
||||
|
||||
//~ TRANS_ITEM drop-glue generic_drop_glue::EnumWithDrop[0]<f64, f32>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::EnumWithDrop<T1, T2>.Drop[0]::drop[0]<f64, f32>
|
||||
//~ TRANS_ITEM fn generic_drop_glue::{{impl}}[1]::drop[0]<f64, f32>
|
||||
let _ = match EnumWithDrop::B::<f64, f32>(1.0) {
|
||||
EnumWithDrop::A(x) => x,
|
||||
EnumWithDrop::B(x) => x as f64
|
||||
|
|
|
@ -40,11 +40,11 @@ pub struct LifeTimeOnly<'a> {
|
|||
|
||||
impl<'a> LifeTimeOnly<'a> {
|
||||
|
||||
//~ TRANS_ITEM fn generic_impl::LifeTimeOnly<'a>[0]::foo[0]
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[1]::foo[0]
|
||||
pub fn foo(&self) {}
|
||||
//~ TRANS_ITEM fn generic_impl::LifeTimeOnly<'a>[0]::bar[0]
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[1]::bar[0]
|
||||
pub fn bar(&'a self) {}
|
||||
//~ TRANS_ITEM fn generic_impl::LifeTimeOnly<'a>[0]::baz[0]
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[1]::baz[0]
|
||||
pub fn baz<'b>(&'b self) {}
|
||||
|
||||
pub fn non_instantiated<T>(&self) {}
|
||||
|
@ -53,27 +53,27 @@ impl<'a> LifeTimeOnly<'a> {
|
|||
|
||||
//~ TRANS_ITEM fn generic_impl::main[0]
|
||||
fn main() {
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::new[0]<i32>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::new[0]<i32>
|
||||
//~ TRANS_ITEM fn generic_impl::id[0]<i32>
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::get[0]<i32, i16>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::get[0]<i32, i16>
|
||||
let _ = Struct::new(0i32).get(0i16);
|
||||
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::new[0]<i64>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::new[0]<i64>
|
||||
//~ TRANS_ITEM fn generic_impl::id[0]<i64>
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::get[0]<i64, i16>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::get[0]<i64, i16>
|
||||
let _ = Struct::new(0i64).get(0i16);
|
||||
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::new[0]<char>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::new[0]<char>
|
||||
//~ TRANS_ITEM fn generic_impl::id[0]<char>
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::get[0]<char, i16>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::get[0]<char, i16>
|
||||
let _ = Struct::new('c').get(0i16);
|
||||
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::new[0]<&str>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::new[0]<&str>
|
||||
//~ TRANS_ITEM fn generic_impl::id[0]<&str>
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::get[0]<generic_impl::Struct[0]<&str>, i16>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::get[0]<generic_impl::Struct[0]<&str>, i16>
|
||||
let _ = Struct::new(Struct::new("str")).get(0i16);
|
||||
|
||||
//~ TRANS_ITEM fn generic_impl::Struct<T>[0]::new[0]<generic_impl::Struct[0]<&str>>
|
||||
//~ TRANS_ITEM fn generic_impl::{{impl}}[0]::new[0]<generic_impl::Struct[0]<&str>>
|
||||
//~ TRANS_ITEM fn generic_impl::id[0]<generic_impl::Struct[0]<&str>>
|
||||
let _ = (Struct::new(Struct::new("str")).f)(Struct::new("str"));
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ trait SomeTrait {
|
|||
// discovered.
|
||||
pub fn generic_function<T>(x: T) -> (T, i32) {
|
||||
impl SomeTrait for i64 {
|
||||
//~ TRANS_ITEM fn impl_in_non_instantiated_generic::generic_function[0]::i64.SomeTrait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn impl_in_non_instantiated_generic::generic_function[0]::{{impl}}[0]::foo[0]
|
||||
fn foo(&self) {}
|
||||
}
|
||||
|
||||
|
|
|
@ -31,12 +31,12 @@ impl<T> Trait for Struct<T> {
|
|||
fn main() {
|
||||
let s1 = Struct { _a: 0u32 };
|
||||
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::Struct<T>.Trait[0]::foo[0]<u32>
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::Struct<T>.Trait[0]::bar[0]<u32>
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::{{impl}}[0]::foo[0]<u32>
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::{{impl}}[0]::bar[0]<u32>
|
||||
let _ = &s1 as &Trait;
|
||||
|
||||
let s1 = Struct { _a: 0u64 };
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::Struct<T>.Trait[0]::foo[0]<u64>
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::Struct<T>.Trait[0]::bar[0]<u64>
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::{{impl}}[0]::foo[0]<u64>
|
||||
//~ TRANS_ITEM fn instantiation_through_vtable::{{impl}}[0]::bar[0]<u64>
|
||||
let _ = &s1 as &Trait;
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ struct StructWithDrop {
|
|||
}
|
||||
|
||||
impl Drop for StructWithDrop {
|
||||
//~ TRANS_ITEM fn non_generic_drop_glue::StructWithDrop.Drop[0]::drop[0]
|
||||
//~ TRANS_ITEM fn non_generic_drop_glue::{{impl}}[0]::drop[0]
|
||||
fn drop(&mut self) {}
|
||||
}
|
||||
|
||||
|
@ -33,7 +33,7 @@ enum EnumWithDrop {
|
|||
}
|
||||
|
||||
impl Drop for EnumWithDrop {
|
||||
//~ TRANS_ITEM fn non_generic_drop_glue::EnumWithDrop.Drop[0]::drop[0]
|
||||
//~ TRANS_ITEM fn non_generic_drop_glue::{{impl}}[1]::drop[0]
|
||||
fn drop(&mut self) {}
|
||||
}
|
||||
|
||||
|
|
|
@ -38,31 +38,31 @@ fn bar() {
|
|||
struct Struct { _x: i32 }
|
||||
|
||||
impl Struct {
|
||||
//~ TRANS_ITEM fn non_generic_functions::Struct[0]::foo[0]
|
||||
//~ TRANS_ITEM fn non_generic_functions::{{impl}}[0]::foo[0]
|
||||
fn foo() {
|
||||
{
|
||||
//~ TRANS_ITEM fn non_generic_functions::Struct[0]::foo[0]::foo[0]
|
||||
//~ TRANS_ITEM fn non_generic_functions::{{impl}}[0]::foo[0]::foo[0]
|
||||
fn foo() {}
|
||||
foo();
|
||||
}
|
||||
|
||||
{
|
||||
//~ TRANS_ITEM fn non_generic_functions::Struct[0]::foo[0]::foo[1]
|
||||
//~ TRANS_ITEM fn non_generic_functions::{{impl}}[0]::foo[0]::foo[1]
|
||||
fn foo() {}
|
||||
foo();
|
||||
}
|
||||
}
|
||||
|
||||
//~ TRANS_ITEM fn non_generic_functions::Struct[0]::bar[0]
|
||||
//~ TRANS_ITEM fn non_generic_functions::{{impl}}[0]::bar[0]
|
||||
fn bar(&self) {
|
||||
{
|
||||
//~ TRANS_ITEM fn non_generic_functions::Struct[0]::bar[0]::foo[0]
|
||||
//~ TRANS_ITEM fn non_generic_functions::{{impl}}[0]::bar[0]::foo[0]
|
||||
fn foo() {}
|
||||
foo();
|
||||
}
|
||||
|
||||
{
|
||||
//~ TRANS_ITEM fn non_generic_functions::Struct[0]::bar[0]::foo[1]
|
||||
//~ TRANS_ITEM fn non_generic_functions::{{impl}}[0]::bar[0]::foo[1]
|
||||
fn foo() {}
|
||||
foo();
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@ pub struct Indexable {
|
|||
impl Index<usize> for Indexable {
|
||||
type Output = u8;
|
||||
|
||||
//~ TRANS_ITEM fn overloaded_operators::Indexable.Index<usize>[0]::index[0]
|
||||
//~ TRANS_ITEM fn overloaded_operators::{{impl}}[0]::index[0]
|
||||
fn index(&self, index: usize) -> &Self::Output {
|
||||
if index >= 3 {
|
||||
&self.data[0]
|
||||
|
@ -34,7 +34,7 @@ impl Index<usize> for Indexable {
|
|||
}
|
||||
|
||||
impl IndexMut<usize> for Indexable {
|
||||
//~ TRANS_ITEM fn overloaded_operators::Indexable.IndexMut<usize>[0]::index_mut[0]
|
||||
//~ TRANS_ITEM fn overloaded_operators::{{impl}}[1]::index_mut[0]
|
||||
fn index_mut(&mut self, index: usize) -> &mut Self::Output {
|
||||
if index >= 3 {
|
||||
&mut self.data[0]
|
||||
|
@ -45,8 +45,8 @@ impl IndexMut<usize> for Indexable {
|
|||
}
|
||||
|
||||
|
||||
//~ TRANS_ITEM fn overloaded_operators::Equatable.::std::cmp::PartialEq[0]::eq[0]
|
||||
//~ TRANS_ITEM fn overloaded_operators::Equatable.::std::cmp::PartialEq[0]::ne[0]
|
||||
//~ TRANS_ITEM fn overloaded_operators::{{impl}}[2]::eq[0]
|
||||
//~ TRANS_ITEM fn overloaded_operators::{{impl}}[2]::ne[0]
|
||||
#[derive(PartialEq)]
|
||||
pub struct Equatable(u32);
|
||||
|
||||
|
@ -54,7 +54,7 @@ pub struct Equatable(u32);
|
|||
impl Add<u32> for Equatable {
|
||||
type Output = u32;
|
||||
|
||||
//~ TRANS_ITEM fn overloaded_operators::Equatable.Add<u32>[0]::add[0]
|
||||
//~ TRANS_ITEM fn overloaded_operators::{{impl}}[3]::add[0]
|
||||
fn add(self, rhs: u32) -> u32 {
|
||||
self.0 + rhs
|
||||
}
|
||||
|
@ -63,7 +63,7 @@ impl Add<u32> for Equatable {
|
|||
impl Deref for Equatable {
|
||||
type Target = u32;
|
||||
|
||||
//~ TRANS_ITEM fn overloaded_operators::Equatable.Deref[0]::deref[0]
|
||||
//~ TRANS_ITEM fn overloaded_operators::{{impl}}[4]::deref[0]
|
||||
fn deref(&self) -> &Self::Target {
|
||||
&self.0
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ pub trait SomeTrait {
|
|||
|
||||
impl SomeTrait for i64 {
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::i64.SomeTrait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[0]::foo[0]
|
||||
fn foo(&self) {}
|
||||
|
||||
fn bar<T>(&self, _: T) {}
|
||||
|
@ -28,7 +28,7 @@ impl SomeTrait for i64 {
|
|||
|
||||
impl SomeTrait for i32 {
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::i32.SomeTrait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[1]::foo[0]
|
||||
fn foo(&self) {}
|
||||
|
||||
fn bar<T>(&self, _: T) {}
|
||||
|
@ -42,7 +42,7 @@ pub trait SomeGenericTrait<T> {
|
|||
// Concrete impl of generic trait
|
||||
impl SomeGenericTrait<u32> for f64 {
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::f64.SomeGenericTrait<u32>[0]::foo[0]
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[2]::foo[0]
|
||||
fn foo(&self, _: u32) {}
|
||||
|
||||
fn bar<T2>(&self, _: u32, _: T2) {}
|
||||
|
@ -57,25 +57,25 @@ impl<T> SomeGenericTrait<T> for f32 {
|
|||
|
||||
//~ TRANS_ITEM fn trait_implementations::main[0]
|
||||
fn main() {
|
||||
//~ TRANS_ITEM fn trait_implementations::i32.SomeTrait[0]::bar[0]<char>
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[1]::bar[0]<char>
|
||||
0i32.bar('x');
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::f64.SomeGenericTrait<u32>[0]::bar[0]<&str>
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[2]::bar[0]<&str>
|
||||
0f64.bar(0u32, "&str");
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::f64.SomeGenericTrait<u32>[0]::bar[0]<()>
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[2]::bar[0]<()>
|
||||
0f64.bar(0u32, ());
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::f32.SomeGenericTrait<T>[0]::foo[0]<char>
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[3]::foo[0]<char>
|
||||
0f32.foo('x');
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::f32.SomeGenericTrait<T>[0]::foo[0]<i64>
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[3]::foo[0]<i64>
|
||||
0f32.foo(-1i64);
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::f32.SomeGenericTrait<T>[0]::bar[0]<u32, ()>
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[3]::bar[0]<u32, ()>
|
||||
0f32.bar(0u32, ());
|
||||
|
||||
//~ TRANS_ITEM fn trait_implementations::f32.SomeGenericTrait<T>[0]::bar[0]<&str, &str>
|
||||
//~ TRANS_ITEM fn trait_implementations::{{impl}}[3]::bar[0]<&str, &str>
|
||||
0f32.bar("&str", "&str");
|
||||
}
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@ fn take_foo_mut<T, F: FnMut(T) -> T>(mut f: F, arg: T) -> T {
|
|||
//~ TRANS_ITEM fn trait_method_as_argument::main[0]
|
||||
fn main() {
|
||||
//~ TRANS_ITEM fn trait_method_as_argument::take_foo_once[0]<u32, fn(u32) -> u32>
|
||||
//~ TRANS_ITEM fn trait_method_as_argument::u32.Trait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn trait_method_as_argument::{{impl}}[0]::foo[0]
|
||||
take_foo_once(Trait::foo, 0u32);
|
||||
|
||||
//~ TRANS_ITEM fn trait_method_as_argument::take_foo_once[0]<char, fn(char) -> char>
|
||||
|
|
|
@ -21,7 +21,7 @@ struct Intermediate(Leaf);
|
|||
struct Leaf;
|
||||
|
||||
impl Drop for Leaf {
|
||||
//~ TRANS_ITEM fn transitive_drop_glue::Leaf.Drop[0]::drop[0]
|
||||
//~ TRANS_ITEM fn transitive_drop_glue::{{impl}}[0]::drop[0]
|
||||
fn drop(&mut self) {}
|
||||
}
|
||||
|
||||
|
@ -44,12 +44,12 @@ fn main() {
|
|||
//~ TRANS_ITEM drop-glue transitive_drop_glue::RootGen[0]<u32>
|
||||
//~ TRANS_ITEM drop-glue transitive_drop_glue::IntermediateGen[0]<u32>
|
||||
//~ TRANS_ITEM drop-glue transitive_drop_glue::LeafGen[0]<u32>
|
||||
//~ TRANS_ITEM fn transitive_drop_glue::LeafGen<T>.Drop[0]::drop[0]<u32>
|
||||
//~ TRANS_ITEM fn transitive_drop_glue::{{impl}}[1]::drop[0]<u32>
|
||||
let _ = RootGen(IntermediateGen(LeafGen(0u32)));
|
||||
|
||||
//~ TRANS_ITEM drop-glue transitive_drop_glue::RootGen[0]<i16>
|
||||
//~ TRANS_ITEM drop-glue transitive_drop_glue::IntermediateGen[0]<i16>
|
||||
//~ TRANS_ITEM drop-glue transitive_drop_glue::LeafGen[0]<i16>
|
||||
//~ TRANS_ITEM fn transitive_drop_glue::LeafGen<T>.Drop[0]::drop[0]<i16>
|
||||
//~ TRANS_ITEM fn transitive_drop_glue::{{impl}}[1]::drop[0]<i16>
|
||||
let _ = RootGen(IntermediateGen(LeafGen(0i16)));
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
struct Dropped;
|
||||
|
||||
impl Drop for Dropped {
|
||||
//~ TRANS_ITEM fn tuple_drop_glue::Dropped.Drop[0]::drop[0]
|
||||
//~ TRANS_ITEM fn tuple_drop_glue::{{impl}}[0]::drop[0]
|
||||
fn drop(&mut self) {}
|
||||
}
|
||||
|
||||
|
|
|
@ -57,11 +57,11 @@ fn main()
|
|||
{
|
||||
// simple case
|
||||
let bool_sized = &true;
|
||||
//~ TRANS_ITEM fn unsizing::bool.Trait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn unsizing::{{impl}}[0]::foo[0]
|
||||
let _bool_unsized = bool_sized as &Trait;
|
||||
|
||||
let char_sized = &true;
|
||||
//~ TRANS_ITEM fn unsizing::char.Trait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn unsizing::{{impl}}[1]::foo[0]
|
||||
let _char_unsized = char_sized as &Trait;
|
||||
|
||||
// struct field
|
||||
|
@ -70,11 +70,11 @@ fn main()
|
|||
_b: 2,
|
||||
_c: 3.0f64
|
||||
};
|
||||
//~ TRANS_ITEM fn unsizing::f64.Trait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn unsizing::{{impl}}[2]::foo[0]
|
||||
let _struct_unsized = struct_sized as &Struct<Trait>;
|
||||
|
||||
// custom coercion
|
||||
let wrapper_sized = Wrapper(&0u32);
|
||||
//~ TRANS_ITEM fn unsizing::u32.Trait[0]::foo[0]
|
||||
//~ TRANS_ITEM fn unsizing::{{impl}}[3]::foo[0]
|
||||
let _wrapper_sized = wrapper_sized as Wrapper<Trait>;
|
||||
}
|
||||
|
|
|
@ -85,5 +85,5 @@ impl NonGeneric {
|
|||
}
|
||||
|
||||
// Only the non-generic methods should be instantiated:
|
||||
//~ TRANS_ITEM fn unused_traits_and_generics::NonGeneric[0]::foo[0]
|
||||
//~ TRANS_ITEM fn unused_traits_and_generics::{{impl}}[3]::foo[0]
|
||||
//~ TRANS_ITEM drop-glue i8
|
||||
|
|
Loading…
Reference in New Issue