diff options
Diffstat (limited to 'src/test/ui/variance/variance-types.rs')
-rw-r--r-- | src/test/ui/variance/variance-types.rs | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/src/test/ui/variance/variance-types.rs b/src/test/ui/variance/variance-types.rs deleted file mode 100644 index b9b6d9c9b..000000000 --- a/src/test/ui/variance/variance-types.rs +++ /dev/null @@ -1,41 +0,0 @@ -#![allow(dead_code)] -#![feature(rustc_attrs)] - -use std::cell::Cell; - -// Check that a type parameter which is only used in a trait bound is -// not considered bivariant. - -#[rustc_variance] -struct InvariantMut<'a,A:'a,B:'a> { //~ ERROR [-, o, o] - t: &'a mut (A,B) -} - -#[rustc_variance] -struct InvariantCell<A> { //~ ERROR [o] - t: Cell<A> -} - -#[rustc_variance] -struct InvariantIndirect<A> { //~ ERROR [o] - t: InvariantCell<A> -} - -#[rustc_variance] -struct Covariant<A> { //~ ERROR [+] - t: A, u: fn() -> A -} - -#[rustc_variance] -struct Contravariant<A> { //~ ERROR [-] - t: fn(A) -} - -#[rustc_variance] -enum Enum<A,B,C> { //~ ERROR [+, -, o] - Foo(Covariant<A>), - Bar(Contravariant<B>), - Zed(Covariant<C>,Contravariant<C>) -} - -pub fn main() { } |