summaryrefslogtreecommitdiffstats
path: root/src/test/ui/hygiene/cross-crate-fields.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/hygiene/cross-crate-fields.rs')
-rw-r--r--src/test/ui/hygiene/cross-crate-fields.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/hygiene/cross-crate-fields.rs b/src/test/ui/hygiene/cross-crate-fields.rs
new file mode 100644
index 000000000..1bcd64573
--- /dev/null
+++ b/src/test/ui/hygiene/cross-crate-fields.rs
@@ -0,0 +1,24 @@
+// Test that fields on a struct defined in another crate are resolved correctly
+// their names differ only in `SyntaxContext`.
+
+// run-pass
+// aux-build:fields.rs
+
+extern crate fields;
+
+use fields::*;
+
+fn main() {
+ check_fields_local();
+
+ test_fields!(check_fields);
+ test_fields2!(check_fields);
+
+ let s1 = test_fields!(construct);
+ check_fields(s1);
+ test_fields!(check_fields_of s1);
+
+ let s2 = test_fields2!(construct);
+ check_fields(s2);
+ test_fields2!(check_fields_of s2);
+}