diff options
| -rw-r--r-- | tests/ui/attributes/fn-align-nameres-ambiguity-143834.rs | 21 | ||||
| -rw-r--r-- | tests/ui/attributes/fn-align-nameres-ambiguity-143834.stderr | 22 |
2 files changed, 43 insertions, 0 deletions
diff --git a/tests/ui/attributes/fn-align-nameres-ambiguity-143834.rs b/tests/ui/attributes/fn-align-nameres-ambiguity-143834.rs new file mode 100644 index 00000000000..5629f92c468 --- /dev/null +++ b/tests/ui/attributes/fn-align-nameres-ambiguity-143834.rs @@ -0,0 +1,21 @@ +//~ NOTE `align` could refer to a built-in attribute + +// Anti-regression test to demonstrate that at least we mitigated breakage from adding a new +// `#[align]` built-in attribute. + +// Needs edition >= 2018 macro use behavior. +//@ edition: 2018 + +macro_rules! align { + //~^ NOTE `align` could also refer to the macro defined here + () => { + /* .. */ + }; +} + +pub(crate) use align; +//~^ ERROR `align` is ambiguous +//~| NOTE ambiguous name +//~| NOTE ambiguous because of a name conflict with a builtin attribute + +fn main() {} diff --git a/tests/ui/attributes/fn-align-nameres-ambiguity-143834.stderr b/tests/ui/attributes/fn-align-nameres-ambiguity-143834.stderr new file mode 100644 index 00000000000..304537173a8 --- /dev/null +++ b/tests/ui/attributes/fn-align-nameres-ambiguity-143834.stderr @@ -0,0 +1,22 @@ +error[E0659]: `align` is ambiguous + --> $DIR/fn-align-nameres-ambiguity-143834.rs:16:16 + | +LL | pub(crate) use align; + | ^^^^^ ambiguous name + | + = note: ambiguous because of a name conflict with a builtin attribute + = note: `align` could refer to a built-in attribute +note: `align` could also refer to the macro defined here + --> $DIR/fn-align-nameres-ambiguity-143834.rs:9:1 + | +LL | / macro_rules! align { +LL | | +LL | | () => { +LL | | /* .. */ +LL | | }; +LL | | } + | |_^ + +error: aborting due to 1 previous error + +For more information about this error, try `rustc --explain E0659`. |
