summaryrefslogtreecommitdiffstats
path: root/src/test/ui/proc-macro/input-interpolated.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/proc-macro/input-interpolated.rs')
-rw-r--r--src/test/ui/proc-macro/input-interpolated.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/test/ui/proc-macro/input-interpolated.rs b/src/test/ui/proc-macro/input-interpolated.rs
new file mode 100644
index 000000000..5e49e330c
--- /dev/null
+++ b/src/test/ui/proc-macro/input-interpolated.rs
@@ -0,0 +1,29 @@
+// Check what token streams proc macros see when interpolated tokens are passed to them as input.
+
+// check-pass
+// edition:2018
+// aux-build:test-macros.rs
+
+#![no_std] // Don't load unnecessary hygiene information from std
+extern crate std;
+
+#[macro_use]
+extern crate test_macros;
+
+macro_rules! pass_ident {
+ ($i:ident) => {
+ fn f() {
+ print_bang!($i);
+ }
+
+ #[print_attr]
+ const $i: u8 = 0;
+
+ #[derive(Print)]
+ struct $i {}
+ };
+}
+
+pass_ident!(A);
+
+fn main() {}