| // Macro attributes are allowed after `#[derive]` and | |
| // `#[derive]` fully configures the item for following attributes. | |
| // check-pass | |
| // compile-flags: -Z span-debug | |
| // aux-build: test-macros.rs | |
| #![no_std] // Don't load unnecessary hygiene information from std | |
| extern crate std; | |
| #[macro_use] | |
| extern crate test_macros; | |
| #[print_attr] | |
| #[derive(Print)] | |
| struct AttributeDerive { | |
| #[cfg(FALSE)] | |
| field: u8, | |
| } | |
| #[derive(Print)] | |
| #[print_attr] | |
| struct DeriveAttribute { | |
| #[cfg(FALSE)] | |
| field: u8, | |
| } | |
| fn main() {} |