diff options
| author | Jieyou Xu <jieyouxu@outlook.com> | 2025-07-18 00:20:17 +0800 |
|---|---|---|
| committer | Jieyou Xu <jieyouxu@outlook.com> | 2025-07-19 01:12:49 +0800 |
| commit | b2e94bf020a99473cf80f05f410af8a5cfc486a6 (patch) | |
| tree | 3853d1a64053b5018f109f859e897f4d2ce0ac91 /tests | |
| parent | 82310651b93a594a3fd69015e1562186a080d94c (diff) | |
| download | rust-b2e94bf020a99473cf80f05f410af8a5cfc486a6.tar.gz rust-b2e94bf020a99473cf80f05f410af8a5cfc486a6.zip | |
Add test demonstrating current beta `#[align]` name resolution regression
See RUST-143834.
Diffstat (limited to 'tests')
| -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`. |
