1 #![allow(plugin_as_library)]
3 #![allow(unused_variables)]
4 #![allow(unused_imports)]
5 // aux-build:macro_crate_test.rs
8 #![feature(plugin, rustc_attrs)]
9 #![plugin(macro_crate_test)]
13 extern crate macro_crate_test;
15 // The duplicate macro will create a copy of the item with the given identifier.
17 #[rustc_duplicate(MyCopy)]
23 #[rustc_duplicate(TestType2)]
26 #[rustc_duplicate(required_fn2)]
27 fn required_fn(&self);
29 #[rustc_duplicate(provided_fn2)]
30 fn provided_fn(&self) { }
33 impl TestTrait for MyStruct {
34 #[rustc_duplicate(TestType2)]
37 #[rustc_duplicate(required_fn2)]
38 fn required_fn(&self) { }
42 let s = MyStruct { number: 42 };
48 let s = MyCopy { number: 42 };