diff options
| author | Eric Huss <eric@huss.org> | 2021-05-15 16:10:17 -0700 |
|---|---|---|
| committer | Eric Huss <eric@huss.org> | 2021-05-15 16:13:46 -0700 |
| commit | 5bbc240ffbb0dcf510fd73d71dae529bd345e6b2 (patch) | |
| tree | 8cefde9b70c34b541f4ef195cab232777e26da88 /src | |
| parent | 17f30e5451f581d753899d2f628e5be354df33cd (diff) | |
| download | rust-5bbc240ffbb0dcf510fd73d71dae529bd345e6b2.tar.gz rust-5bbc240ffbb0dcf510fd73d71dae529bd345e6b2.zip | |
Fix unused attributes on macro_rules.
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/ui/unused/unused-attr-macro-rules.rs | 34 | ||||
| -rw-r--r-- | src/test/ui/unused/unused-attr-macro-rules.stderr | 32 |
2 files changed, 66 insertions, 0 deletions
diff --git a/src/test/ui/unused/unused-attr-macro-rules.rs b/src/test/ui/unused/unused-attr-macro-rules.rs new file mode 100644 index 00000000000..396137a11d0 --- /dev/null +++ b/src/test/ui/unused/unused-attr-macro-rules.rs @@ -0,0 +1,34 @@ +#![deny(unused_attributes)] +// Unused attributes on macro_rules requires special handling since the +// macro_rules definition does not survive towards HIR. + +// A sample of various built-in attributes. +#[macro_export] +#[macro_use] //~ ERROR unused attribute +#[path="foo"] //~ ERROR unused attribute +#[recursion_limit="1"] //~ ERROR unused attribute + //~| ERROR crate-level attribute should be an inner attribute +macro_rules! foo { + () => {}; +} + +// The following should not warn about unused attributes. +#[allow(unused)] +macro_rules! foo2 { + () => {}; +} + +#[cfg(FALSE)] +macro_rules! foo { + () => {}; +} + +/// Some docs +#[deprecated] +#[doc = "more docs"] +#[macro_export] +macro_rules! bar { + () => {}; +} + +fn main() {} diff --git a/src/test/ui/unused/unused-attr-macro-rules.stderr b/src/test/ui/unused/unused-attr-macro-rules.stderr new file mode 100644 index 00000000000..4606be01ac0 --- /dev/null +++ b/src/test/ui/unused/unused-attr-macro-rules.stderr @@ -0,0 +1,32 @@ +error: unused attribute + --> $DIR/unused-attr-macro-rules.rs:7:1 + | +LL | #[macro_use] + | ^^^^^^^^^^^^ + | +note: the lint level is defined here + --> $DIR/unused-attr-macro-rules.rs:1:9 + | +LL | #![deny(unused_attributes)] + | ^^^^^^^^^^^^^^^^^ + +error: unused attribute + --> $DIR/unused-attr-macro-rules.rs:8:1 + | +LL | #[path="foo"] + | ^^^^^^^^^^^^^ + +error: unused attribute + --> $DIR/unused-attr-macro-rules.rs:9:1 + | +LL | #[recursion_limit="1"] + | ^^^^^^^^^^^^^^^^^^^^^^ + +error: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]` + --> $DIR/unused-attr-macro-rules.rs:9:1 + | +LL | #[recursion_limit="1"] + | ^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to 4 previous errors + |
