| // This test case tests the incremental compilation hash (ICH) implementation | |
| // for let expressions. | |
| // The general pattern followed here is: Change one thing between rev1 and rev2 | |
| // and make sure that the hash has changed, then change nothing between rev2 and | |
| // rev3 and make sure that the hash has not changed. | |
| //@ build-pass (FIXME(62277): could be check-pass?) | |
| //@ revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6 | |
| //@ compile-flags: -Z query-dep-graph -O | |
| //@ [cfail1]compile-flags: -Zincremental-ignore-spans | |
| //@ [cfail2]compile-flags: -Zincremental-ignore-spans | |
| //@ [cfail3]compile-flags: -Zincremental-ignore-spans | |
| //@ ignore-backends: gcc | |
| #![allow(warnings)] | |
| #![feature(rustc_attrs)] | |
| #![feature(specialization)] | |
| #![crate_type="rlib"] | |
| struct Foo; | |
| // Change Method Name ----------------------------------------------------------- | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait ChangeMethodNameTrait { | |
| fn method_name(); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeMethodNameTrait for Foo { | |
| fn method_name() { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids,predicates_of", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| pub trait ChangeMethodNameTrait { | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name2(); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeMethodNameTrait for Foo { | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name2() { } | |
| } | |
| // Change Method Body ----------------------------------------------------------- | |
| // | |
| // This should affect the method itself, but not the impl. | |
| pub trait ChangeMethodBodyTrait { | |
| fn method_name(); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeMethodBodyTrait for Foo { | |
| // -------------------------------------------------------------- | |
| // ------------------------- | |
| // -------------------------------------------------------------- | |
| // ------------------------- | |
| fn method_name() { | |
| // | |
| } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeMethodBodyTrait for Foo { | |
| #[rustc_clean(except="opt_hir_owner_nodes,typeck", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,typeck", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name() { | |
| () | |
| } | |
| } | |
| // Change Method Body (inlined fn) --------------------------------------------- | |
| // | |
| // This should affect the method itself, but not the impl. | |
| pub trait ChangeMethodBodyTraitInlined { | |
| fn method_name(); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeMethodBodyTraitInlined for Foo { | |
| // ---------------------------------------------------------------------------- | |
| // ------------------------- | |
| // ---------------------------------------------------------------------------- | |
| // ------------------------- | |
| #[inline] | |
| fn method_name() { | |
| // ----- | |
| } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeMethodBodyTraitInlined for Foo { | |
| #[rustc_clean(except="opt_hir_owner_nodes,typeck,optimized_mir", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,typeck,optimized_mir", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| #[inline] | |
| fn method_name() { | |
| panic!() | |
| } | |
| } | |
| // Change Method Selfness ------------------------------------------------------ | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait ChangeMethodSelfnessTrait { | |
| fn method_name(); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeMethodSelfnessTrait for Foo { | |
| fn method_name() { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait ChangeMethodSelfnessTrait { | |
| fn method_name(&self); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeMethodSelfnessTrait for Foo { | |
| #[rustc_clean( | |
| except="opt_hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir", | |
| cfg="cfail2", | |
| )] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean( | |
| except="opt_hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir", | |
| cfg="cfail5", | |
| )] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name(&self) { | |
| () | |
| } | |
| } | |
| // Change Method Selfness ----------------------------------------------------------- | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait RemoveMethodSelfnessTrait { | |
| fn method_name(&self); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl RemoveMethodSelfnessTrait for Foo { | |
| fn method_name(&self) { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait RemoveMethodSelfnessTrait { | |
| fn method_name(); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl RemoveMethodSelfnessTrait for Foo { | |
| #[rustc_clean( | |
| except="opt_hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir", | |
| cfg="cfail2", | |
| )] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean( | |
| except="opt_hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir", | |
| cfg="cfail5", | |
| )] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name() {} | |
| } | |
| // Change Method Selfmutness ----------------------------------------------------------- | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait ChangeMethodSelfmutnessTrait { | |
| fn method_name(&self); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeMethodSelfmutnessTrait for Foo { | |
| // ----------------------------------------------------------------------------------- | |
| // ------------------------- | |
| // ----------------------------------------------------------------------------------- | |
| // ------------------------- | |
| fn method_name(& self) {} | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait ChangeMethodSelfmutnessTrait { | |
| fn method_name(&mut self); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeMethodSelfmutnessTrait for Foo { | |
| #[rustc_clean(except="opt_hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name(&mut self) {} | |
| } | |
| // Change item kind ----------------------------------------------------------- | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait ChangeItemKindTrait { | |
| fn name(); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeItemKindTrait for Foo { | |
| fn name() { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait ChangeItemKindTrait { | |
| type name; | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeItemKindTrait for Foo { | |
| type name = (); | |
| } | |
| // Remove item ----------------------------------------------------------- | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait RemoveItemTrait { | |
| type TypeName; | |
| fn method_name(); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl RemoveItemTrait for Foo { | |
| type TypeName = (); | |
| fn method_name() { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait RemoveItemTrait { | |
| type TypeName; | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl RemoveItemTrait for Foo { | |
| type TypeName = (); | |
| } | |
| // Add item ----------------------------------------------------------- | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait AddItemTrait { | |
| type TypeName; | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl AddItemTrait for Foo { | |
| type TypeName = (); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait AddItemTrait { | |
| type TypeName; | |
| fn method_name(); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,associated_item_def_ids", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl AddItemTrait for Foo { | |
| type TypeName = (); | |
| fn method_name() { } | |
| } | |
| // Change has-value ----------------------------------------------------------- | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait ChangeHasValueTrait { | |
| //-------------------------------------------------------- | |
| //-------------------------- | |
| //-------------------------------------------------------- | |
| //-------------------------- | |
| fn method_name() ; | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeHasValueTrait for Foo { | |
| fn method_name() { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| pub trait ChangeHasValueTrait { | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name() { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeHasValueTrait for Foo { | |
| fn method_name() { } | |
| } | |
| // Add default | |
| pub trait AddDefaultTrait { | |
| fn method_name(); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl AddDefaultTrait for Foo { | |
| // ------------------------------------------------------- | |
| // ------------------------- | |
| // ------------------------------------------------------- | |
| // ------------------------- | |
| fn method_name() { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl AddDefaultTrait for Foo { | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| default fn method_name() { } | |
| } | |
| // Add arguments | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait AddArgumentTrait { | |
| fn method_name(&self); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl AddArgumentTrait for Foo { | |
| // ----------------------------------------------------------------------------------- | |
| // ------------------------- | |
| // ----------------------------------------------------------------------------------- | |
| // ------------------------- | |
| fn method_name(&self ) { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait AddArgumentTrait { | |
| fn method_name(&self, x: u32); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl AddArgumentTrait for Foo { | |
| #[rustc_clean(except="opt_hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name(&self, _x: u32) { } | |
| } | |
| // Change argument type | |
| #[cfg(any(cfail1,cfail4))] | |
| pub trait ChangeArgumentTypeTrait { | |
| fn method_name(&self, x: u32); | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeArgumentTypeTrait for Foo { | |
| // ----------------------------------------------------------------------------------- | |
| // ------------------------- | |
| // ----------------------------------------------------------------------------------- | |
| // ------------------------- | |
| fn method_name(&self, _x: u32 ) { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| pub trait ChangeArgumentTypeTrait { | |
| fn method_name(&self, x: char); | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeArgumentTypeTrait for Foo { | |
| #[rustc_clean(except="opt_hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn method_name(&self, _x: char) { } | |
| } | |
| struct Bar<T>(T); | |
| // Add Type Parameter To Impl -------------------------------------------------- | |
| trait AddTypeParameterToImpl<T> { | |
| fn id(t: T) -> T; | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl AddTypeParameterToImpl<u32> for Bar<u32> { | |
| fn id(t: u32) -> u32 { t } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes,generics_of,impl_trait_header", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,generics_of,impl_trait_header", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl<TTT> AddTypeParameterToImpl<TTT> for Bar<TTT> { | |
| #[rustc_clean( | |
| except="opt_hir_owner_nodes,generics_of,fn_sig,type_of,typeck,optimized_mir", | |
| cfg="cfail2", | |
| )] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean( | |
| except="opt_hir_owner_nodes,generics_of,fn_sig,type_of,typeck,optimized_mir", | |
| cfg="cfail5", | |
| )] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn id(t: TTT) -> TTT { t } | |
| } | |
| // Change Self Type of Impl ---------------------------------------------------- | |
| trait ChangeSelfTypeOfImpl { | |
| fn id(self) -> Self; | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl ChangeSelfTypeOfImpl for u32 { | |
| fn id(self) -> Self { self } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes,impl_trait_header", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes,impl_trait_header", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl ChangeSelfTypeOfImpl for u64 { | |
| #[rustc_clean(except="fn_sig,typeck,optimized_mir", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="fn_sig,typeck,optimized_mir", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn id(self) -> Self { self } | |
| } | |
| // Add Lifetime Bound to Impl -------------------------------------------------- | |
| trait AddLifetimeBoundToImplParameter { | |
| fn id(self) -> Self; | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl<T> AddLifetimeBoundToImplParameter for T { | |
| fn id(self) -> Self { self } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl<T: 'static> AddLifetimeBoundToImplParameter for T { | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn id(self) -> Self { self } | |
| } | |
| // Add Trait Bound to Impl Parameter ------------------------------------------- | |
| trait AddTraitBoundToImplParameter { | |
| fn id(self) -> Self; | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl<T> AddTraitBoundToImplParameter for T { | |
| fn id(self) -> Self { self } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(except="opt_hir_owner_nodes", cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl<T: Clone> AddTraitBoundToImplParameter for T { | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| fn id(self) -> Self { self } | |
| } | |
| // Add #[no_mangle] to Method -------------------------------------------------- | |
| trait AddNoMangleToMethod { | |
| fn add_no_mangle_to_method(&self) { } | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl AddNoMangleToMethod for Foo { | |
| // ------------------------- | |
| // ------------------------- | |
| // ------------------------- | |
| // ------------------------- | |
| // ----------------- | |
| fn add_no_mangle_to_method(&self) { } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl AddNoMangleToMethod for Foo { | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| #[unsafe(no_mangle)] | |
| fn add_no_mangle_to_method(&self) { } | |
| } | |
| // Make Method #[inline] ------------------------------------------------------- | |
| trait MakeMethodInline { | |
| fn make_method_inline(&self) -> u8 { 0 } | |
| } | |
| #[cfg(any(cfail1,cfail4))] | |
| impl MakeMethodInline for Foo { | |
| // ------------------------- | |
| // ------------------------- | |
| // ------------------------- | |
| // ------------------------- | |
| // ------ | |
| fn make_method_inline(&self) -> u8 { 0 } | |
| } | |
| #[cfg(not(any(cfail1,cfail4)))] | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| impl MakeMethodInline for Foo { | |
| #[rustc_clean(cfg="cfail2")] | |
| #[rustc_clean(cfg="cfail3")] | |
| #[rustc_clean(cfg="cfail5")] | |
| #[rustc_clean(cfg="cfail6")] | |
| #[inline] | |
| fn make_method_inline(&self) -> u8 { 0 } | |
| } |