about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAaron Hill <aa1ronham@gmail.com>2020-07-14 23:21:59 -0400
committerAaron Hill <aa1ronham@gmail.com>2020-07-26 18:37:02 -0400
commit5cd1b5dd7972e465bb7d7f6fbfecae6b6f6c299d (patch)
treebb2e9f3a4d73828916b520b5f7ef03f41894ed6e
parent0caebfabe6f3506355581b2fbfcfa0ca05a768fc (diff)
downloadrust-5cd1b5dd7972e465bb7d7f6fbfecae6b6f6c299d.tar.gz
rust-5cd1b5dd7972e465bb7d7f6fbfecae6b6f6c299d.zip
Add test for use of $crate in nested foreign macro_rules!
-rw-r--r--src/test/ui/hygiene/auxiliary/nested-dollar-crate.rs14
-rw-r--r--src/test/ui/hygiene/nested-dollar-crate.rs9
2 files changed, 23 insertions, 0 deletions
diff --git a/src/test/ui/hygiene/auxiliary/nested-dollar-crate.rs b/src/test/ui/hygiene/auxiliary/nested-dollar-crate.rs
new file mode 100644
index 00000000000..e5caa0f9cf8
--- /dev/null
+++ b/src/test/ui/hygiene/auxiliary/nested-dollar-crate.rs
@@ -0,0 +1,14 @@
+pub const IN_DEF_CRATE: &str = "In def crate!";
+
+macro_rules! make_it {
+    () => {
+        #[macro_export]
+        macro_rules! inner {
+            () => {
+                $crate::IN_DEF_CRATE
+            }
+        }
+    }
+}
+
+make_it!();
diff --git a/src/test/ui/hygiene/nested-dollar-crate.rs b/src/test/ui/hygiene/nested-dollar-crate.rs
new file mode 100644
index 00000000000..e8703bc77ee
--- /dev/null
+++ b/src/test/ui/hygiene/nested-dollar-crate.rs
@@ -0,0 +1,9 @@
+// aux-build:nested-dollar-crate.rs
+// edition:2018
+// run-pass
+
+extern crate nested_dollar_crate;
+
+fn main() {
+    assert_eq!(nested_dollar_crate::inner!(), "In def crate!");
+}