about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNiko Matsakis <niko@alum.mit.edu>2015-08-07 13:32:14 -0400
committerNiko Matsakis <niko@alum.mit.edu>2015-08-12 17:58:56 -0400
commit532fcb250fb888431b0049f68dc619a1f77e70a7 (patch)
tree4f8bd89d752b3646ea2b66fce8f94c6e24c6bfdf
parent92d16d961d01dfa5f16218ddc630df31b099d2aa (diff)
downloadrust-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
-rw-r--r--src/test/compile-fail/trait-bounds-on-structs-and-enums-in-fns.rs30
-rw-r--r--src/test/compile-fail/trait-bounds-on-structs-and-enums-in-impls.rs35
-rw-r--r--src/test/compile-fail/trait-bounds-on-structs-and-enums.rs17
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() {
 }