Enable the overflow-related tests for MIR

This commit is contained in:
James Miller 2016-04-29 00:08:01 +12:00 committed by Eduard Burtescu
parent f2c983b248
commit bcdb2602f8
20 changed files with 0 additions and 39 deletions

View File

@ -11,7 +11,6 @@
// these errors are not actually "const_err", they occur in trans/consts
// and are unconditional warnings that can't be denied or allowed
#![feature(rustc_attrs)]
#![allow(exceeding_bitshifts)]
#![allow(const_err)]
@ -24,7 +23,6 @@ const FOO: u8 = [5u8][1];
//~^ ERROR array index out of bounds
//~^^ ERROR array index out of bounds
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let a = -std::i8::MIN;
//~^ WARN attempted to negate with overflow

View File

@ -8,7 +8,6 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
#![feature(rustc_attrs)]
#![allow(unused_imports)]
// Note: the relevant lint pass here runs before some of the constant
@ -104,7 +103,6 @@ const VALS_U64: (u64, u64, u64, u64) =
//~^ ERROR attempted to multiply with overflow
);
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
foo(VALS_I8);
foo(VALS_I16);

View File

@ -12,8 +12,6 @@
// error-pattern:attempted to divide by zero
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let y = 0;
let _z = 1 / y;

View File

@ -12,8 +12,6 @@
// error-pattern:attempted remainder with a divisor of zero
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let y = 0;
let _z = 1 % y;

View File

@ -14,8 +14,6 @@
// compile-flags: -C debug-assertions
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = 200u8 + 200u8 + 200u8;
}

View File

@ -15,8 +15,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = 1_i32 << 32;
}

View File

@ -15,8 +15,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = 1 << -1;
}

View File

@ -15,8 +15,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = 1_u64 << 64;
}

View File

@ -18,8 +18,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
// this signals overflow when checking is on
let x = 1_i8 << 17;

View File

@ -13,8 +13,6 @@
// error-pattern:thread 'main' panicked at 'arithmetic operation overflowed'
// compile-flags: -C debug-assertions
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let x = 200u8 * 4;
}

View File

@ -13,8 +13,6 @@
// error-pattern:thread 'main' panicked at 'attempted to negate with overflow'
// compile-flags: -C debug-assertions
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = -std::i8::MIN;
}

View File

@ -15,8 +15,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = -1_i32 >> 32;
}

View File

@ -15,8 +15,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = -1_i32 >> -1;
}

View File

@ -15,8 +15,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = -1_i64 >> 64;
}

View File

@ -18,8 +18,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
// this signals overflow when checking is on
let x = 2_i8 >> 17;

View File

@ -15,8 +15,6 @@
#![warn(exceeding_bitshifts)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _n = 1i64 >> [64][0];
}

View File

@ -16,8 +16,6 @@
#![warn(exceeding_bitshifts)]
#![feature(const_indexing)]
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _n = 1i64 >> [64][0];
}

View File

@ -13,8 +13,6 @@
// error-pattern:thread 'main' panicked at 'arithmetic operation overflowed'
// compile-flags: -C debug-assertions
#![feature(rustc_attrs)]
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
let _x = 42u8 - (42u8 + 1);
}

View File

@ -37,7 +37,6 @@ fn debug_assert() {
}
fn overflow() {
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn add(a: u8, b: u8) -> u8 { a + b }
add(200u8, 200u8);

View File

@ -19,13 +19,11 @@ use std::thread;
macro_rules! check {
($($e:expr),*) => {
$(assert!(thread::spawn({
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
move|| { $e; }
}).join().is_err());)*
}
}
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
fn main() {
check![
isize::min_value() / -1,