1 // compile-flags: -Z span-debug --error-format human
2 // aux-build:test-macros.rs
5 #![feature(custom_inner_attributes)]
6 #![feature(proc_macro_hygiene)]
7 #![feature(stmt_expr_attributes)]
8 #![feature(rustc_attrs)]
10 #![no_std] // Don't load unnecessary hygiene information from std
14 extern crate test_macros;
16 #[print_target_and_args(first)]
17 #[print_target_and_args(second)]
19 #![print_target_and_args(third)]
20 #![print_target_and_args(fourth)]
23 #[print_target_and_args(mod_first)]
24 #[print_target_and_args(mod_second)]
26 #![print_target_and_args(mod_third)]
27 #![print_target_and_args(mod_fourth)]
35 struct MyDerivePrint {
39 #![cfg_attr(not(FALSE), rustc_dummy(third))]
48 #[print_target_and_args(tuple_attrs)] (
50 #![cfg_attr(not(FALSE), rustc_dummy(innermost))]
55 #[print_target_and_args(tuple_attrs)] (
57 #![cfg_attr(not(FALSE), rustc_dummy(innermost))]
63 #![print_attr] //~ ERROR expected non-macro inner attribute
67 #![print_attr] //~ ERROR expected non-macro inner attribute
71 #![print_attr] //~ ERROR expected non-macro inner attribute
75 #![print_attr] //~ ERROR expected non-macro inner attribute
82 #![print_target_and_args_consume(tenth)]