about summary refs log tree commit diff
path: root/src/test/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui')
-rw-r--r--src/test/ui/rfc-2091-track-caller/error-with-main.rs4
-rw-r--r--src/test/ui/rfc-2091-track-caller/error-with-main.stderr12
-rw-r--r--src/test/ui/rfc-2091-track-caller/error-with-start.rs7
-rw-r--r--src/test/ui/rfc-2091-track-caller/error-with-start.stderr12
4 files changed, 35 insertions, 0 deletions
diff --git a/src/test/ui/rfc-2091-track-caller/error-with-main.rs b/src/test/ui/rfc-2091-track-caller/error-with-main.rs
new file mode 100644
index 00000000000..b2ea31bb517
--- /dev/null
+++ b/src/test/ui/rfc-2091-track-caller/error-with-main.rs
@@ -0,0 +1,4 @@
+#[track_caller] //~ ERROR `main` function is not allowed to be
+fn main() {
+    panic!("{}: oh no", std::panic::Location::caller());
+}
diff --git a/src/test/ui/rfc-2091-track-caller/error-with-main.stderr b/src/test/ui/rfc-2091-track-caller/error-with-main.stderr
new file mode 100644
index 00000000000..f05f88e7d71
--- /dev/null
+++ b/src/test/ui/rfc-2091-track-caller/error-with-main.stderr
@@ -0,0 +1,12 @@
+error: `main` function is not allowed to be `#[track_caller]`
+  --> $DIR/error-with-main.rs:1:1
+   |
+LL |   #[track_caller]
+   |   ^^^^^^^^^^^^^^^
+LL | / fn main() {
+LL | |     panic!("{}: oh no", std::panic::Location::caller());
+LL | | }
+   | |_- `main` function is not allowed to be `#[track_caller]`
+
+error: aborting due to previous error
+
diff --git a/src/test/ui/rfc-2091-track-caller/error-with-start.rs b/src/test/ui/rfc-2091-track-caller/error-with-start.rs
new file mode 100644
index 00000000000..678cb7fa404
--- /dev/null
+++ b/src/test/ui/rfc-2091-track-caller/error-with-start.rs
@@ -0,0 +1,7 @@
+#![feature(start)]
+
+#[start]
+#[track_caller] //~ ERROR start is not allowed to be `#[track_caller]`
+fn start(_argc: isize, _argv: *const *const u8) -> isize {
+    panic!("{}: oh no", std::panic::Location::caller());
+}
diff --git a/src/test/ui/rfc-2091-track-caller/error-with-start.stderr b/src/test/ui/rfc-2091-track-caller/error-with-start.stderr
new file mode 100644
index 00000000000..03b2ce5514f
--- /dev/null
+++ b/src/test/ui/rfc-2091-track-caller/error-with-start.stderr
@@ -0,0 +1,12 @@
+error: start is not allowed to be `#[track_caller]`
+  --> $DIR/error-with-start.rs:4:1
+   |
+LL |   #[track_caller]
+   |   ^^^^^^^^^^^^^^^
+LL | / fn start(_argc: isize, _argv: *const *const u8) -> isize {
+LL | |     panic!("{}: oh no", std::panic::Location::caller());
+LL | | }
+   | |_- start is not allowed to be `#[track_caller]`
+
+error: aborting due to previous error
+