summaryrefslogtreecommitdiffstats
path: root/src/test/ui/hygiene/auxiliary/fields.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/hygiene/auxiliary/fields.rs')
-rw-r--r--src/test/ui/hygiene/auxiliary/fields.rs73
1 files changed, 0 insertions, 73 deletions
diff --git a/src/test/ui/hygiene/auxiliary/fields.rs b/src/test/ui/hygiene/auxiliary/fields.rs
deleted file mode 100644
index 733d11a9e..000000000
--- a/src/test/ui/hygiene/auxiliary/fields.rs
+++ /dev/null
@@ -1,73 +0,0 @@
-#![feature(decl_macro)]
-
-#[derive(Copy, Clone, PartialEq, Debug)]
-pub enum Field {
- RootCtxt,
- MacroCtxt,
-}
-
-#[rustfmt::skip]
-macro x(
- $macro_name:ident,
- $macro2_name:ident,
- $type_name:ident,
- $field_name:ident,
- $const_name:ident
-) {
- #[derive(Copy, Clone)]
- pub struct $type_name {
- pub field: Field,
- pub $field_name: Field,
- }
-
- pub const $const_name: $type_name =
- $type_name { field: Field::MacroCtxt, $field_name: Field::RootCtxt };
-
- #[macro_export]
- macro_rules! $macro_name {
- (check_fields_of $e:expr) => {{
- let e = $e;
- assert_eq!(e.field, Field::MacroCtxt);
- assert_eq!(e.$field_name, Field::RootCtxt);
- }};
- (check_fields) => {{
- assert_eq!($const_name.field, Field::MacroCtxt);
- assert_eq!($const_name.$field_name, Field::RootCtxt);
- }};
- (construct) => {
- $type_name { field: Field::MacroCtxt, $field_name: Field::RootCtxt }
- };
- }
-
- pub macro $macro2_name {
- (check_fields_of $e:expr) => {{
- let e = $e;
- assert_eq!(e.field, Field::MacroCtxt);
- assert_eq!(e.$field_name, Field::RootCtxt);
- }},
- (check_fields) => {{
- assert_eq!($const_name.field, Field::MacroCtxt);
- assert_eq!($const_name.$field_name, Field::RootCtxt);
- }},
- (construct) => {
- $type_name { field: Field::MacroCtxt, $field_name: Field::RootCtxt }
- }
- }
-}
-
-x!(test_fields, test_fields2, MyStruct, field, MY_CONST);
-
-pub fn check_fields(s: MyStruct) {
- test_fields!(check_fields_of s);
-}
-
-pub fn check_fields_local() {
- test_fields!(check_fields);
- test_fields2!(check_fields);
-
- let s1 = test_fields!(construct);
- test_fields!(check_fields_of s1);
-
- let s2 = test_fields2!(construct);
- test_fields2!(check_fields_of s2);
-}