about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorDeadbeef <ent3rm4n@gmail.com>2021-10-14 06:53:20 +0000
committerDeadbeef <ent3rm4n@gmail.com>2021-10-14 07:07:34 +0000
commit26b78ccd317d7950e0aa9861c7c8e643d92d77cf (patch)
tree0aeb747d656dff753b5e3c7f43c1dd3d98693cc1 /src
parent6770dbd4b5729677bcca6a4c73d3335e523a7ac9 (diff)
downloadrust-26b78ccd317d7950e0aa9861c7c8e643d92d77cf.tar.gz
rust-26b78ccd317d7950e0aa9861c7c8e643d92d77cf.zip
Fix const stability
Diffstat (limited to 'src')
-rw-r--r--src/test/ui/intrinsics/const-eval-select-stability.rs20
-rw-r--r--src/test/ui/intrinsics/const-eval-select-stability.stderr10
2 files changed, 30 insertions, 0 deletions
diff --git a/src/test/ui/intrinsics/const-eval-select-stability.rs b/src/test/ui/intrinsics/const-eval-select-stability.rs
new file mode 100644
index 00000000000..db2462aee59
--- /dev/null
+++ b/src/test/ui/intrinsics/const-eval-select-stability.rs
@@ -0,0 +1,20 @@
+#![feature(staged_api)]
+#![feature(const_eval_select)]
+#![stable(since = "1.0", feature = "ui_test")]
+
+use std::intrinsics::const_eval_select;
+
+fn log() {
+    println!("HEY HEY HEY")
+}
+
+const fn nothing(){}
+
+#[stable(since = "1.0", feature = "hey")]
+#[rustc_const_stable(since = "1.0", feature = "const_hey")]
+pub const unsafe fn hey() {
+    const_eval_select((), nothing, log);
+    //~^ ERROR `const_eval_select` is not yet stable as a const fn
+}
+
+fn main() {}
diff --git a/src/test/ui/intrinsics/const-eval-select-stability.stderr b/src/test/ui/intrinsics/const-eval-select-stability.stderr
new file mode 100644
index 00000000000..79641bbb46a
--- /dev/null
+++ b/src/test/ui/intrinsics/const-eval-select-stability.stderr
@@ -0,0 +1,10 @@
+error: `const_eval_select` is not yet stable as a const fn
+  --> $DIR/const-eval-select-stability.rs:16:5
+   |
+LL |     const_eval_select((), nothing, log);
+   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   |
+   = help: const-stable functions can only call other const-stable functions
+
+error: aborting due to previous error
+