summaryrefslogtreecommitdiffstats
path: root/src/test/ui/async-await/issues/issue-64433.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/async-await/issues/issue-64433.rs')
-rw-r--r--src/test/ui/async-await/issues/issue-64433.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/test/ui/async-await/issues/issue-64433.rs b/src/test/ui/async-await/issues/issue-64433.rs
new file mode 100644
index 000000000..d900f8ed9
--- /dev/null
+++ b/src/test/ui/async-await/issues/issue-64433.rs
@@ -0,0 +1,30 @@
+// Regression test for issue #64433.
+//
+// See issue-64391-2.rs for more details, as that was fixed by the
+// same PR.
+//
+// check-pass
+// edition:2018
+
+#[derive(Debug)]
+struct A<'a> {
+ inner: Vec<&'a str>,
+}
+
+struct B {}
+
+impl B {
+ async fn something_with_a(&mut self, a: A<'_>) -> Result<(), String> {
+ println!("{:?}", a);
+ Ok(())
+ }
+}
+
+async fn can_error(some_string: &str) -> Result<(), String> {
+ let a = A { inner: vec![some_string, "foo"] };
+ let mut b = B {};
+ Ok(b.something_with_a(a).await.map(drop)?)
+}
+
+fn main() {
+}