about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMazdak Farrokhzad <twingoow@gmail.com>2019-08-20 18:10:43 +0200
committerMazdak Farrokhzad <twingoow@gmail.com>2019-08-20 22:57:23 +0200
commit7ee4f1da8c75b44501c01fb3e754c1732dad76c3 (patch)
tree6a7a177f30197c9ff35613712a9b9bbd0b52e5f7
parent51879c3abaedb926739095d19a2af638ee6a07d8 (diff)
downloadrust-7ee4f1da8c75b44501c01fb3e754c1732dad76c3.tar.gz
rust-7ee4f1da8c75b44501c01fb3e754c1732dad76c3.zip
Allow 'default async fn' to parse.
-rw-r--r--src/libsyntax/parse/parser/item.rs1
-rw-r--r--src/test/ui/specialization/issue-63716-parse-async.rs14
2 files changed, 15 insertions, 0 deletions
diff --git a/src/libsyntax/parse/parser/item.rs b/src/libsyntax/parse/parser/item.rs
index 72819c99660..03d7e922123 100644
--- a/src/libsyntax/parse/parser/item.rs
+++ b/src/libsyntax/parse/parser/item.rs
@@ -825,6 +825,7 @@ impl<'a> Parser<'a> {
             self.is_keyword_ahead(1, &[
                 kw::Impl,
                 kw::Const,
+                kw::Async,
                 kw::Fn,
                 kw::Unsafe,
                 kw::Extern,
diff --git a/src/test/ui/specialization/issue-63716-parse-async.rs b/src/test/ui/specialization/issue-63716-parse-async.rs
new file mode 100644
index 00000000000..c3764ffaab8
--- /dev/null
+++ b/src/test/ui/specialization/issue-63716-parse-async.rs
@@ -0,0 +1,14 @@
+// Ensure that `default async fn` will parse.
+// See issue #63716 for details.
+
+// check-pass
+// edition:2018
+
+#![feature(specialization)]
+
+fn main() {}
+
+#[cfg(FALSE)]
+impl Foo for Bar {
+    default async fn baz() {}
+}