summaryrefslogtreecommitdiffstats
path: root/tests/ui/lint/inert-attr-macro.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/lint/inert-attr-macro.rs')
-rw-r--r--tests/ui/lint/inert-attr-macro.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/ui/lint/inert-attr-macro.rs b/tests/ui/lint/inert-attr-macro.rs
new file mode 100644
index 000000000..dc0bb8ac2
--- /dev/null
+++ b/tests/ui/lint/inert-attr-macro.rs
@@ -0,0 +1,20 @@
+// check-pass
+
+#![warn(unused)]
+
+macro_rules! foo {
+ () => {}
+}
+
+fn main() {
+ #[inline] foo!(); //~ WARN unused attribute `inline`
+
+ // This does nothing, since `#[allow(warnings)]` is itself
+ // an inert attribute on a macro call
+ #[allow(warnings)] #[inline] foo!(); //~ WARN unused attribute `allow`
+ //~^ WARN unused attribute `inline`
+
+ // This does work, since the attribute is on a parent
+ // of the macro invocation.
+ #[allow(warnings)] { #[inline] foo!(); }
+}