X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Ftest%2Fcodegen%2Fslice-position-bounds-check.rs;h=b494f42b2965da25deb72f33619e2558e40e01f6;hb=c261ff1a77f8d5d51d51efd028f937b20146adff;hp=aae81ae84922b096a8cfced8047dd42383f5d53f;hpb=50773991d3f8dee3cda032f6d1289277cdd9da25;p=rust.git diff --git a/src/test/codegen/slice-position-bounds-check.rs b/src/test/codegen/slice-position-bounds-check.rs index aae81ae8492..b494f42b296 100644 --- a/src/test/codegen/slice-position-bounds-check.rs +++ b/src/test/codegen/slice-position-bounds-check.rs @@ -1,15 +1,5 @@ -// Copyright 2017 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 or the MIT license -// , at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - // no-system-llvm -// compile-flags: -O +// compile-flags: -O -C panic=abort #![crate_type = "lib"] fn search(arr: &mut [T], a: &T) -> Result { @@ -25,7 +15,7 @@ fn search(arr: &mut [T], a: &T) -> Result { #[no_mangle] pub fn position_no_bounds_check(y: &mut [u32], x: &u32, z: &u32) -> bool { // This contains "call assume" so we cannot just rule out all calls - // CHECK-NOT: panic + // CHECK-NOT: panic_bounds_check if let Ok(p) = search(y, x) { y[p] == *z } else { @@ -33,10 +23,10 @@ pub fn position_no_bounds_check(y: &mut [u32], x: &u32, z: &u32) -> bool { } } -// just to make sure that panicking really emits "panic" somewhere in the IR +// just to make sure that panicking really emits "panic_bounds_check" somewhere in the IR // CHECK-LABEL: @test_check #[no_mangle] -pub fn test_check() { - // CHECK: panic - unreachable!() +pub fn test_check(y: &[i32]) -> i32 { + // CHECK: panic_bounds_check + y[12] }