]> git.lizzy.rs Git - rust.git/commitdiff
Add regression test for #60674.
authorDavid Wood <david@davidtw.co>
Thu, 9 May 2019 17:13:21 +0000 (18:13 +0100)
committerDavid Wood <david@davidtw.co>
Thu, 9 May 2019 17:15:15 +0000 (18:15 +0100)
This commit adds a regression test (with current broken behaviour) that
tests that `mut` patterns are not lost when provided as input to a proc macro.

src/test/ui/async-await/auxiliary/issue-60674.rs [new file with mode: 0644]
src/test/ui/async-await/issue-60674.rs [new file with mode: 0644]
src/test/ui/async-await/issue-60674.stdout [new file with mode: 0644]

diff --git a/src/test/ui/async-await/auxiliary/issue-60674.rs b/src/test/ui/async-await/auxiliary/issue-60674.rs
new file mode 100644 (file)
index 0000000..680c6e5
--- /dev/null
@@ -0,0 +1,12 @@
+// force-host
+// no-prefer-dynamic
+#![crate_type = "proc-macro"]
+
+extern crate proc_macro;
+use proc_macro::TokenStream;
+
+#[proc_macro_attribute]
+pub fn attr(_args: TokenStream, input: TokenStream) -> TokenStream {
+    println!("{}", input);
+    TokenStream::new()
+}
diff --git a/src/test/ui/async-await/issue-60674.rs b/src/test/ui/async-await/issue-60674.rs
new file mode 100644 (file)
index 0000000..37e356e
--- /dev/null
@@ -0,0 +1,14 @@
+// aux-build:issue-60674.rs
+// compile-pass
+// edition:2018
+#![feature(async_await)]
+
+// This is a regression test that ensures that `mut` patterns are not lost when provided as input
+// to a proc macro.
+
+extern crate issue_60674;
+
+#[issue_60674::attr]
+async fn f(mut x: u8) {}
+
+fn main() {}
diff --git a/src/test/ui/async-await/issue-60674.stdout b/src/test/ui/async-await/issue-60674.stdout
new file mode 100644 (file)
index 0000000..f1dbcba
--- /dev/null
@@ -0,0 +1 @@
+async fn f(x: u8) { }