about summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
authorTakayuki Maeda <takoyaki0316@gmail.com>2025-04-05 06:09:14 +0900
committerTakayuki Maeda <takoyaki0316@gmail.com>2025-04-05 06:09:14 +0900
commit6b5ccfc87f59ab017032e430d4d358b4989735da (patch)
tree142a23431eb04d0f18d51b6992887c6f6babd1de /tests
parentae9173d7dd4a31806c950c90dcc331f1508b4d17 (diff)
downloadrust-6b5ccfc87f59ab017032e430d4d358b4989735da.tar.gz
rust-6b5ccfc87f59ab017032e430d4d358b4989735da.zip
check if merged attributes list is empty
Diffstat (limited to 'tests')
-rw-r--r--tests/ui/attributes/invalid-reprs.rs6
-rw-r--r--tests/ui/attributes/invalid-reprs.stderr33
2 files changed, 39 insertions, 0 deletions
diff --git a/tests/ui/attributes/invalid-reprs.rs b/tests/ui/attributes/invalid-reprs.rs
new file mode 100644
index 00000000000..95ed14b5491
--- /dev/null
+++ b/tests/ui/attributes/invalid-reprs.rs
@@ -0,0 +1,6 @@
+fn main() {
+    let y = #[repr(uwu(4))]
+    //~^ ERROR attributes on expressions are experimental
+    //~| ERROR unrecognized representation hint
+    (&id(5)); //~ ERROR: cannot find function `id` in this scope
+}
diff --git a/tests/ui/attributes/invalid-reprs.stderr b/tests/ui/attributes/invalid-reprs.stderr
new file mode 100644
index 00000000000..415b969b244
--- /dev/null
+++ b/tests/ui/attributes/invalid-reprs.stderr
@@ -0,0 +1,33 @@
+error[E0658]: attributes on expressions are experimental
+  --> $DIR/invalid-reprs.rs:2:13
+   |
+LL |     let y = #[repr(uwu(4))]
+   |             ^^^^^^^^^^^^^^^
+   |
+   = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information
+   = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable
+   = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
+
+error[E0425]: cannot find function `id` in this scope
+  --> $DIR/invalid-reprs.rs:5:7
+   |
+LL |     (&id(5));
+   |       ^^ not found in this scope
+   |
+help: consider importing this function
+   |
+LL + use std::process::id;
+   |
+
+error[E0552]: unrecognized representation hint
+  --> $DIR/invalid-reprs.rs:2:20
+   |
+LL |     let y = #[repr(uwu(4))]
+   |                    ^^^^^^
+   |
+   = help: valid reprs are `Rust` (default), `C`, `align`, `packed`, `transparent`, `simd`, `i8`, `u8`, `i16`, `u16`, `i32`, `u32`, `i64`, `u64`, `i128`, `u128`, `isize`, `usize`
+
+error: aborting due to 3 previous errors
+
+Some errors have detailed explanations: E0425, E0552, E0658.
+For more information about an error, try `rustc --explain E0425`.