summaryrefslogtreecommitdiffstats
path: root/src/test/ui-fulldeps/deriving-global.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui-fulldeps/deriving-global.rs')
-rw-r--r--src/test/ui-fulldeps/deriving-global.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/test/ui-fulldeps/deriving-global.rs b/src/test/ui-fulldeps/deriving-global.rs
new file mode 100644
index 000000000..921767af9
--- /dev/null
+++ b/src/test/ui-fulldeps/deriving-global.rs
@@ -0,0 +1,30 @@
+// run-pass
+
+#![feature(rustc_private)]
+
+extern crate rustc_macros;
+extern crate rustc_serialize;
+
+mod submod {
+ use rustc_macros::{Decodable, Encodable};
+
+ // if any of these are implemented without global calls for any
+ // function calls, then being in a submodule will (correctly)
+ // cause errors about unrecognised module `std` (or `extra`)
+ #[derive(PartialEq, PartialOrd, Eq, Ord, Hash, Clone, Debug, Encodable, Decodable)]
+ enum A {
+ A1(usize),
+ A2(isize),
+ }
+
+ #[derive(PartialEq, PartialOrd, Eq, Ord, Hash, Clone, Debug, Encodable, Decodable)]
+ struct B {
+ x: usize,
+ y: isize,
+ }
+
+ #[derive(PartialEq, PartialOrd, Eq, Ord, Hash, Clone, Debug, Encodable, Decodable)]
+ struct C(usize, isize);
+}
+
+pub fn main() {}