//~ 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
//~ 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
// 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);
}
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
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
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) {}
//~ 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"));
}
// 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) {}
}
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;
}
}
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) {}
}
}
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) {}
}
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();
}
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]
}
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]
}
-//~ 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);
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
}
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
}
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) {}
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) {}
// 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) {}
//~ 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");
}
//~ 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>
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) {}
}
//~ 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)));
}
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) {}
}
{
// 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
_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>;
}
}
// 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