diff options
| author | Dylan DPC <dylan.dpc@gmail.com> | 2020-05-26 22:11:31 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-26 22:11:31 +0200 |
| commit | 401b3aefe94723df7c55965f128f83a9f7b233ab (patch) | |
| tree | e2a37740b7490822a955b61be1feebe9124030d7 /src/test/ui/unsafe | |
| parent | e38fdda243c890bc8f4ce93eb82fd1bf750ebbe7 (diff) | |
| parent | 09619bc4592418aa66a77bf90c6c2efbd648d103 (diff) | |
Rollup merge of #72401 - ecstatic-morse:issue-72394, r=eddyb
Use correct function for detecting `const fn` in unsafety checking Resolves #72394.
Diffstat (limited to 'src/test/ui/unsafe')
| -rw-r--r-- | src/test/ui/unsafe/unsafe-unstable-const-fn.rs | 13 | ||||
| -rw-r--r-- | src/test/ui/unsafe/unsafe-unstable-const-fn.stderr | 11 |
2 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/unsafe/unsafe-unstable-const-fn.rs b/src/test/ui/unsafe/unsafe-unstable-const-fn.rs new file mode 100644 index 00000000000..d9d85ee9132 --- /dev/null +++ b/src/test/ui/unsafe/unsafe-unstable-const-fn.rs @@ -0,0 +1,13 @@ +#![stable(feature = "foo", since = "1.33.0")] +#![feature(staged_api)] +#![feature(const_compare_raw_pointers)] +#![feature(const_fn)] + +#[stable(feature = "foo", since = "1.33.0")] +#[rustc_const_unstable(feature = "const_foo", issue = "none")] +const fn unstable(a: *const i32, b: *const i32) -> bool { + a == b + //~^ pointer operation is unsafe +} + +fn main() {} diff --git a/src/test/ui/unsafe/unsafe-unstable-const-fn.stderr b/src/test/ui/unsafe/unsafe-unstable-const-fn.stderr new file mode 100644 index 00000000000..d8f3737c8f5 --- /dev/null +++ b/src/test/ui/unsafe/unsafe-unstable-const-fn.stderr @@ -0,0 +1,11 @@ +error[E0133]: pointer operation is unsafe and requires unsafe function or block + --> $DIR/unsafe-unstable-const-fn.rs:9:5 + | +LL | a == b + | ^^^^^^ pointer operation + | + = note: operations on pointers in constants + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0133`. |
