From e69748ba4f48efdc9a1dfcf8c16bc9aba39a86e3 Mon Sep 17 00:00:00 2001 From: Yuki Okushi Date: Thu, 16 Apr 2020 15:50:32 +0900 Subject: Move tests from `test/run-fail` to UI --- src/test/ui/array-slice-vec/bounds-check-no-overflow.rs | 10 ++++++++++ src/test/ui/array-slice-vec/dst-raw-slice.rs | 11 +++++++++++ 2 files changed, 21 insertions(+) create mode 100644 src/test/ui/array-slice-vec/bounds-check-no-overflow.rs create mode 100644 src/test/ui/array-slice-vec/dst-raw-slice.rs (limited to 'src/test/ui/array-slice-vec') diff --git a/src/test/ui/array-slice-vec/bounds-check-no-overflow.rs b/src/test/ui/array-slice-vec/bounds-check-no-overflow.rs new file mode 100644 index 00000000000..70cbb067254 --- /dev/null +++ b/src/test/ui/array-slice-vec/bounds-check-no-overflow.rs @@ -0,0 +1,10 @@ +// run-fail +// error-pattern:index out of bounds + +use std::usize; +use std::mem::size_of; + +fn main() { + let xs = [1, 2, 3]; + xs[usize::MAX / size_of::() + 1]; +} diff --git a/src/test/ui/array-slice-vec/dst-raw-slice.rs b/src/test/ui/array-slice-vec/dst-raw-slice.rs new file mode 100644 index 00000000000..33db126944d --- /dev/null +++ b/src/test/ui/array-slice-vec/dst-raw-slice.rs @@ -0,0 +1,11 @@ +// Test bounds checking for DST raw slices + +// run-fail +// error-pattern:index out of bounds +#[allow(unconditional_panic)] +fn main() { + let a: *const [_] = &[1, 2, 3]; + unsafe { + let _b = (*a)[3]; + } +} -- cgit 1.4.1-3-g733a5