diff options
| author | Niko Matsakis <niko@alum.mit.edu> | 2015-08-07 13:32:14 -0400 |
|---|---|---|
| committer | Niko Matsakis <niko@alum.mit.edu> | 2015-08-12 17:58:56 -0400 |
| commit | 532fcb250fb888431b0049f68dc619a1f77e70a7 (patch) | |
| tree | 4f8bd89d752b3646ea2b66fce8f94c6e24c6bfdf | |
| parent | 92d16d961d01dfa5f16218ddc630df31b099d2aa (diff) | |
| download | rust-532fcb250fb888431b0049f68dc619a1f77e70a7.tar.gz rust-532fcb250fb888431b0049f68dc619a1f77e70a7.zip | |
Fallout in tests -- break this test into three tests, since we later saw
staging differences in terms of when errors were reported
3 files changed, 65 insertions, 17 deletions
diff --git a/src/test/compile-fail/trait-bounds-on-structs-and-enums-in-fns.rs b/src/test/compile-fail/trait-bounds-on-structs-and-enums-in-fns.rs new file mode 100644 index 00000000000..dbfda61f552 --- /dev/null +++ b/src/test/compile-fail/trait-bounds-on-structs-and-enums-in-fns.rs @@ -0,0 +1,30 @@ +// Copyright 2014 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. + +trait Trait {} + +struct Foo<T:Trait> { + x: T, +} + +enum Bar<T:Trait> { + ABar(isize), + BBar(T), + CBar(usize), +} + +fn explode(x: Foo<u32>) {} +//~^ ERROR not implemented + +fn kaboom(y: Bar<f32>) {} +//~^ ERROR not implemented + +fn main() { +} diff --git a/src/test/compile-fail/trait-bounds-on-structs-and-enums-in-impls.rs b/src/test/compile-fail/trait-bounds-on-structs-and-enums-in-impls.rs new file mode 100644 index 00000000000..c647dd38ee3 --- /dev/null +++ b/src/test/compile-fail/trait-bounds-on-structs-and-enums-in-impls.rs @@ -0,0 +1,35 @@ +// Copyright 2014 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. + +trait Trait {} + +struct Foo<T:Trait> { + x: T, +} + +enum Bar<T:Trait> { + ABar(isize), + BBar(T), + CBar(usize), +} + +trait PolyTrait<T> +{ + fn whatever(&self, t: T) {} +} + +struct Struct; + +impl PolyTrait<Foo<u16>> for Struct { +//~^ ERROR not implemented +} + +fn main() { +} diff --git a/src/test/compile-fail/trait-bounds-on-structs-and-enums.rs b/src/test/compile-fail/trait-bounds-on-structs-and-enums.rs index 988961e7fa1..e1b005b0c85 100644 --- a/src/test/compile-fail/trait-bounds-on-structs-and-enums.rs +++ b/src/test/compile-fail/trait-bounds-on-structs-and-enums.rs @@ -20,12 +20,6 @@ enum Bar<T:Trait> { CBar(usize), } -fn explode(x: Foo<u32>) {} -//~^ ERROR not implemented - -fn kaboom(y: Bar<f32>) {} -//~^ ERROR not implemented - impl<T> Foo<T> { //~^ ERROR the trait `Trait` is not implemented fn uhoh() {} @@ -55,16 +49,5 @@ enum Enum { DictionaryLike { field: Bar<u8> }, //~ ERROR not implemented } -trait PolyTrait<T> -{ - fn whatever(&self, t: T) {} -} - -struct Struct; - -impl PolyTrait<Foo<u16>> for Struct { -//~^ ERROR not implemented -} - fn main() { } |
