test traits defined on ranges
This commit is contained in:
parent
9e78cd73b5
commit
53618c3629
92
src/test/compile-fail/range_traits-1.rs
Normal file
92
src/test/compile-fail/range_traits-1.rs
Normal file
@ -0,0 +1,92 @@
|
||||
// Copyright 2016 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 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
#![feature(inclusive_range)]
|
||||
|
||||
use std::ops::*;
|
||||
|
||||
#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Debug)]
|
||||
struct AllTheRanges {
|
||||
a: Range<usize>,
|
||||
//~^ ERROR PartialOrd
|
||||
//~^^ ERROR PartialOrd
|
||||
//~^^^ ERROR Ord
|
||||
//~^^^^ ERROR binary operation
|
||||
//~^^^^^ ERROR binary operation
|
||||
//~^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^^ ERROR binary operation
|
||||
b: RangeTo<usize>,
|
||||
//~^ ERROR PartialOrd
|
||||
//~^^ ERROR PartialOrd
|
||||
//~^^^ ERROR Ord
|
||||
//~^^^^ ERROR binary operation
|
||||
//~^^^^^ ERROR binary operation
|
||||
//~^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^^ ERROR binary operation
|
||||
c: RangeFrom<usize>,
|
||||
//~^ ERROR PartialOrd
|
||||
//~^^ ERROR PartialOrd
|
||||
//~^^^ ERROR Ord
|
||||
//~^^^^ ERROR binary operation
|
||||
//~^^^^^ ERROR binary operation
|
||||
//~^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^^ ERROR binary operation
|
||||
d: RangeFull,
|
||||
//~^ ERROR PartialOrd
|
||||
//~^^ ERROR PartialOrd
|
||||
//~^^^ ERROR Ord
|
||||
//~^^^^ ERROR binary operation
|
||||
//~^^^^^ ERROR binary operation
|
||||
//~^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^^ ERROR binary operation
|
||||
e: RangeInclusive<usize>,
|
||||
//~^ ERROR PartialOrd
|
||||
//~^^ ERROR PartialOrd
|
||||
//~^^^ ERROR Ord
|
||||
//~^^^^ ERROR binary operation
|
||||
//~^^^^^ ERROR binary operation
|
||||
//~^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^^ ERROR binary operation
|
||||
f: RangeToInclusive<usize>,
|
||||
//~^ ERROR PartialOrd
|
||||
//~^^ ERROR PartialOrd
|
||||
//~^^^ ERROR Ord
|
||||
//~^^^^ ERROR binary operation
|
||||
//~^^^^^ ERROR binary operation
|
||||
//~^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^ ERROR binary operation
|
||||
//~^^^^^^^^^^^ ERROR binary operation
|
||||
}
|
||||
|
||||
fn main() {}
|
||||
|
17
src/test/compile-fail/range_traits-2.rs
Normal file
17
src/test/compile-fail/range_traits-2.rs
Normal file
@ -0,0 +1,17 @@
|
||||
// Copyright 2016 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 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::ops::*;
|
||||
|
||||
#[derive(Copy, Clone)] //~ ERROR Copy
|
||||
struct R(Range<usize>);
|
||||
|
||||
fn main() {}
|
||||
|
17
src/test/compile-fail/range_traits-3.rs
Normal file
17
src/test/compile-fail/range_traits-3.rs
Normal file
@ -0,0 +1,17 @@
|
||||
// Copyright 2016 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 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::ops::*;
|
||||
|
||||
#[derive(Copy, Clone)] //~ ERROR Copy
|
||||
struct R(RangeFrom<usize>);
|
||||
|
||||
fn main() {}
|
||||
|
20
src/test/compile-fail/range_traits-4.rs
Normal file
20
src/test/compile-fail/range_traits-4.rs
Normal file
@ -0,0 +1,20 @@
|
||||
// Copyright 2016 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 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
#![feature(rustc_attrs)]
|
||||
|
||||
use std::ops::*;
|
||||
|
||||
#[derive(Copy, Clone)]
|
||||
struct R(RangeTo<usize>);
|
||||
|
||||
#[rustc_error]
|
||||
fn main() {} //~ ERROR success
|
||||
|
20
src/test/compile-fail/range_traits-5.rs
Normal file
20
src/test/compile-fail/range_traits-5.rs
Normal file
@ -0,0 +1,20 @@
|
||||
// Copyright 2016 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 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
#![feature(rustc_attrs)]
|
||||
|
||||
use std::ops::*;
|
||||
|
||||
#[derive(Copy, Clone)]
|
||||
struct R(RangeFull);
|
||||
|
||||
#[rustc_error]
|
||||
fn main() {} //~ ERROR success
|
||||
|
19
src/test/compile-fail/range_traits-6.rs
Normal file
19
src/test/compile-fail/range_traits-6.rs
Normal file
@ -0,0 +1,19 @@
|
||||
// Copyright 2016 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 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
#![feature(inclusive_range)]
|
||||
|
||||
use std::ops::*;
|
||||
|
||||
#[derive(Copy, Clone)] //~ ERROR Copy
|
||||
struct R(RangeInclusive<usize>);
|
||||
|
||||
fn main() {}
|
||||
|
20
src/test/compile-fail/range_traits-7.rs
Normal file
20
src/test/compile-fail/range_traits-7.rs
Normal file
@ -0,0 +1,20 @@
|
||||
// Copyright 2016 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 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
#![feature(rustc_attrs, inclusive_range)]
|
||||
|
||||
use std::ops::*;
|
||||
|
||||
#[derive(Copy, Clone)]
|
||||
struct R(RangeToInclusive<usize>);
|
||||
|
||||
#[rustc_error]
|
||||
fn main() {} //~ ERROR success
|
||||
|
Loading…
x
Reference in New Issue
Block a user