about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlex Burka <aburka@seas.upenn.edu>2016-03-02 00:58:04 -0500
committerAlex Burka <aburka@seas.upenn.edu>2016-03-14 16:46:54 -0400
commitc433b703ead56ec4dd05b5f3ad39301d27e19953 (patch)
treed694ae70b5200153a5c858890d275f44216ccb5a
parentd19f1b629918a556709e6b89a1929305db6449dc (diff)
downloadrust-c433b703ead56ec4dd05b5f3ad39301d27e19953.tar.gz
rust-c433b703ead56ec4dd05b5f3ad39301d27e19953.zip
refactor derive-no-std test, add empty struct/enum
-rw-r--r--src/test/auxiliary/derive-no-std.rs (renamed from src/test/run-pass-fulldeps/derive-no-std.rs)29
-rw-r--r--src/test/run-pass/derive-no-std.rs22
2 files changed, 37 insertions, 14 deletions
diff --git a/src/test/run-pass-fulldeps/derive-no-std.rs b/src/test/auxiliary/derive-no-std.rs
index 78e9da001f7..f083e10bfdb 100644
--- a/src/test/run-pass-fulldeps/derive-no-std.rs
+++ b/src/test/auxiliary/derive-no-std.rs
@@ -8,32 +8,33 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
-#![feature(rand, collections, rustc_private)]
-#![no_std]
+// no-prefer-dynamic
 
-extern crate rand;
-extern crate serialize as rustc_serialize;
-extern crate collections;
+#![crate_type = "rlib"]
+#![no_std]
 
 // Issue #16803
 
 #[derive(Clone, Hash, PartialEq, Eq, PartialOrd, Ord,
          Debug, Default, Copy)]
-struct Foo {
-    x: u32,
+pub struct Foo {
+    pub x: u32,
 }
 
 #[derive(Clone, Hash, PartialEq, Eq, PartialOrd, Ord,
          Debug, Copy)]
-enum Bar {
+pub enum Bar {
     Qux,
     Quux(u32),
 }
 
-enum Baz { A=0, B=5, }
+#[derive(Clone, Hash, PartialEq, Eq, PartialOrd, Ord,
+         Debug, Copy)]
+pub enum Void {}
+#[derive(Clone, Hash, PartialEq, Eq, PartialOrd, Ord,
+         Debug, Copy)]
+pub struct Empty;
+#[derive(Clone, Hash, PartialEq, Eq, PartialOrd, Ord,
+         Debug, Copy)]
+pub struct AlsoEmpty {}
 
-fn main() {
-    Foo { x: 0 };
-    Bar::Quux(3);
-    Baz::A;
-}
diff --git a/src/test/run-pass/derive-no-std.rs b/src/test/run-pass/derive-no-std.rs
new file mode 100644
index 00000000000..0cbe4f4ebd0
--- /dev/null
+++ b/src/test/run-pass/derive-no-std.rs
@@ -0,0 +1,22 @@
+// Copyright 2015 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.
+
+// aux-build:derive-no-std.rs
+
+extern crate derive_no_std;
+use derive_no_std::*;
+
+fn main() {
+    let f = Foo { x: 0 };
+    assert_eq!(f.clone(), Foo::default());
+
+    assert!(Bar::Qux < Bar::Quux(42));
+}
+