summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorinquisitivecrystal <22333129+inquisitivecrystal@users.noreply.github.com>2022-12-12 04:08:59 -0800
committerinquisitivecrystal <22333129+inquisitivecrystal@users.noreply.github.com>2022-12-13 22:52:43 -0800
commitfc3bcf17702d21525f17b741553a8f9a545e1801 (patch)
tree42a2ce00b96d912fda9a626963985128d5ab41f3
parent9b312737c063a679c38c97ceb484a3a13a96ee75 (diff)
downloadrust-fc3bcf17702d21525f17b741553a8f9a545e1801.tar.gz
Add regression test
-rw-r--r--src/test/ui/attributes/issue-105594-invalid-attr-validation.rs13
-rw-r--r--src/test/ui/attributes/issue-105594-invalid-attr-validation.stderr26
2 files changed, 39 insertions, 0 deletions
diff --git a/src/test/ui/attributes/issue-105594-invalid-attr-validation.rs b/src/test/ui/attributes/issue-105594-invalid-attr-validation.rs
new file mode 100644
index 00000000000..6c68e6b046f
--- /dev/null
+++ b/src/test/ui/attributes/issue-105594-invalid-attr-validation.rs
@@ -0,0 +1,13 @@
+// This checks that the attribute validation ICE in issue #105594 doesn't
+// recur.
+//
+// ignore-thumbv8m.base
+#![feature(cmse_nonsecure_entry)]
+
+fn main() {}
+
+#[track_caller] //~ ERROR attribute should be applied to a function
+static _A: () = ();
+
+#[cmse_nonsecure_entry] //~ ERROR attribute should be applied to a function
+static _B: () = (); //~| ERROR #[cmse_nonsecure_entry]` is only valid for targets
diff --git a/src/test/ui/attributes/issue-105594-invalid-attr-validation.stderr b/src/test/ui/attributes/issue-105594-invalid-attr-validation.stderr
new file mode 100644
index 00000000000..c6b2d6e7813
--- /dev/null
+++ b/src/test/ui/attributes/issue-105594-invalid-attr-validation.stderr
@@ -0,0 +1,26 @@
+error[E0739]: attribute should be applied to a function definition
+ --> $DIR/issue-105594-invalid-attr-validation.rs:9:1
+ |
+LL | #[track_caller]
+ | ^^^^^^^^^^^^^^^
+LL | static _A: () = ();
+ | ------------------- not a function definition
+
+error: attribute should be applied to a function definition
+ --> $DIR/issue-105594-invalid-attr-validation.rs:12:1
+ |
+LL | #[cmse_nonsecure_entry]
+ | ^^^^^^^^^^^^^^^^^^^^^^^
+LL | static _B: () = ();
+ | ------------------- not a function definition
+
+error[E0775]: `#[cmse_nonsecure_entry]` is only valid for targets with the TrustZone-M extension
+ --> $DIR/issue-105594-invalid-attr-validation.rs:12:1
+ |
+LL | #[cmse_nonsecure_entry]
+ | ^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 3 previous errors
+
+Some errors have detailed explanations: E0739, E0775.
+For more information about an error, try `rustc --explain E0739`.