about summary refs log tree commit diff
path: root/src/test/ui/unsafe
diff options
context:
space:
mode:
authorLeSeulArtichaut <leseulartichaut@gmail.com>2021-03-14 20:11:37 +0100
committerLeSeulArtichaut <leseulartichaut@gmail.com>2021-05-11 20:35:38 +0200
commita95b342f0283dd213ef0248bc1a42e158dbef603 (patch)
tree66bad2c99b5cdebc10bde77d0d6b8f38d8ecbe29 /src/test/ui/unsafe
parent29780f43e2067ee1c88e73fa76ef1cced28758d3 (diff)
downloadrust-a95b342f0283dd213ef0248bc1a42e158dbef603.tar.gz
rust-a95b342f0283dd213ef0248bc1a42e158dbef603.zip
Test `-Zthir-unsafeck` for unsafe function calls
Diffstat (limited to 'src/test/ui/unsafe')
-rw-r--r--src/test/ui/unsafe/unsafe-const-fn.mir.stderr (renamed from src/test/ui/unsafe/unsafe-const-fn.stderr)2
-rw-r--r--src/test/ui/unsafe/unsafe-const-fn.rs3
-rw-r--r--src/test/ui/unsafe/unsafe-const-fn.thir.stderr11
-rw-r--r--src/test/ui/unsafe/unsafe-fn-called-from-safe.mir.stderr (renamed from src/test/ui/unsafe/unsafe-fn-called-from-safe.stderr)2
-rw-r--r--src/test/ui/unsafe/unsafe-fn-called-from-safe.rs3
-rw-r--r--src/test/ui/unsafe/unsafe-fn-called-from-safe.thir.stderr11
-rw-r--r--src/test/ui/unsafe/unsafe-fn-used-as-value.mir.stderr (renamed from src/test/ui/unsafe/unsafe-fn-used-as-value.stderr)2
-rw-r--r--src/test/ui/unsafe/unsafe-fn-used-as-value.rs3
-rw-r--r--src/test/ui/unsafe/unsafe-fn-used-as-value.thir.stderr11
9 files changed, 45 insertions, 3 deletions
diff --git a/src/test/ui/unsafe/unsafe-const-fn.stderr b/src/test/ui/unsafe/unsafe-const-fn.mir.stderr
index 370e1e673cf..3031be720f0 100644
--- a/src/test/ui/unsafe/unsafe-const-fn.stderr
+++ b/src/test/ui/unsafe/unsafe-const-fn.mir.stderr
@@ -1,5 +1,5 @@
 error[E0133]: call to unsafe function is unsafe and requires unsafe function or block
-  --> $DIR/unsafe-const-fn.rs:7:18
+  --> $DIR/unsafe-const-fn.rs:10:18
    |
 LL | const VAL: u32 = dummy(0xFFFF);
    |                  ^^^^^^^^^^^^^ call to unsafe function
diff --git a/src/test/ui/unsafe/unsafe-const-fn.rs b/src/test/ui/unsafe/unsafe-const-fn.rs
index 3b4becf17a7..65e3acf3063 100644
--- a/src/test/ui/unsafe/unsafe-const-fn.rs
+++ b/src/test/ui/unsafe/unsafe-const-fn.rs
@@ -1,5 +1,8 @@
 // A quick test of 'unsafe const fn' functionality
 
+// revisions: mir thir
+// [thir]compile-flags: -Z thir-unsafeck
+
 const unsafe fn dummy(v: u32) -> u32 {
     !v
 }
diff --git a/src/test/ui/unsafe/unsafe-const-fn.thir.stderr b/src/test/ui/unsafe/unsafe-const-fn.thir.stderr
new file mode 100644
index 00000000000..3031be720f0
--- /dev/null
+++ b/src/test/ui/unsafe/unsafe-const-fn.thir.stderr
@@ -0,0 +1,11 @@
+error[E0133]: call to unsafe function is unsafe and requires unsafe function or block
+  --> $DIR/unsafe-const-fn.rs:10:18
+   |
+LL | const VAL: u32 = dummy(0xFFFF);
+   |                  ^^^^^^^^^^^^^ call to unsafe function
+   |
+   = note: consult the function's documentation for information on how to avoid undefined behavior
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0133`.
diff --git a/src/test/ui/unsafe/unsafe-fn-called-from-safe.stderr b/src/test/ui/unsafe/unsafe-fn-called-from-safe.mir.stderr
index 80d2c6ced24..1d6fa4cbf40 100644
--- a/src/test/ui/unsafe/unsafe-fn-called-from-safe.stderr
+++ b/src/test/ui/unsafe/unsafe-fn-called-from-safe.mir.stderr
@@ -1,5 +1,5 @@
 error[E0133]: call to unsafe function is unsafe and requires unsafe function or block
-  --> $DIR/unsafe-fn-called-from-safe.rs:4:5
+  --> $DIR/unsafe-fn-called-from-safe.rs:7:5
    |
 LL |     f();
    |     ^^^ call to unsafe function
diff --git a/src/test/ui/unsafe/unsafe-fn-called-from-safe.rs b/src/test/ui/unsafe/unsafe-fn-called-from-safe.rs
index 5487a8ecc37..df12e441516 100644
--- a/src/test/ui/unsafe/unsafe-fn-called-from-safe.rs
+++ b/src/test/ui/unsafe/unsafe-fn-called-from-safe.rs
@@ -1,3 +1,6 @@
+// revisions: mir thir
+// [thir]compile-flags: -Z thir-unsafeck
+
 unsafe fn f() { return; }
 
 fn main() {
diff --git a/src/test/ui/unsafe/unsafe-fn-called-from-safe.thir.stderr b/src/test/ui/unsafe/unsafe-fn-called-from-safe.thir.stderr
new file mode 100644
index 00000000000..1d6fa4cbf40
--- /dev/null
+++ b/src/test/ui/unsafe/unsafe-fn-called-from-safe.thir.stderr
@@ -0,0 +1,11 @@
+error[E0133]: call to unsafe function is unsafe and requires unsafe function or block
+  --> $DIR/unsafe-fn-called-from-safe.rs:7:5
+   |
+LL |     f();
+   |     ^^^ call to unsafe function
+   |
+   = note: consult the function's documentation for information on how to avoid undefined behavior
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0133`.
diff --git a/src/test/ui/unsafe/unsafe-fn-used-as-value.stderr b/src/test/ui/unsafe/unsafe-fn-used-as-value.mir.stderr
index a7b73ec5342..b08a7109dda 100644
--- a/src/test/ui/unsafe/unsafe-fn-used-as-value.stderr
+++ b/src/test/ui/unsafe/unsafe-fn-used-as-value.mir.stderr
@@ -1,5 +1,5 @@
 error[E0133]: call to unsafe function is unsafe and requires unsafe function or block
-  --> $DIR/unsafe-fn-used-as-value.rs:5:5
+  --> $DIR/unsafe-fn-used-as-value.rs:8:5
    |
 LL |     x();
    |     ^^^ call to unsafe function
diff --git a/src/test/ui/unsafe/unsafe-fn-used-as-value.rs b/src/test/ui/unsafe/unsafe-fn-used-as-value.rs
index 59b81477930..2af0786617b 100644
--- a/src/test/ui/unsafe/unsafe-fn-used-as-value.rs
+++ b/src/test/ui/unsafe/unsafe-fn-used-as-value.rs
@@ -1,3 +1,6 @@
+// revisions: mir thir
+// [thir]compile-flags: -Z thir-unsafeck
+
 unsafe fn f() { return; }
 
 fn main() {
diff --git a/src/test/ui/unsafe/unsafe-fn-used-as-value.thir.stderr b/src/test/ui/unsafe/unsafe-fn-used-as-value.thir.stderr
new file mode 100644
index 00000000000..b08a7109dda
--- /dev/null
+++ b/src/test/ui/unsafe/unsafe-fn-used-as-value.thir.stderr
@@ -0,0 +1,11 @@
+error[E0133]: call to unsafe function is unsafe and requires unsafe function or block
+  --> $DIR/unsafe-fn-used-as-value.rs:8:5
+   |
+LL |     x();
+   |     ^^^ call to unsafe function
+   |
+   = note: consult the function's documentation for information on how to avoid undefined behavior
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0133`.