Skip to content

Commit

Permalink
test for issue rust-lang#77175
Browse files Browse the repository at this point in the history
  • Loading branch information
sapessi committed Sep 4, 2021
1 parent 82f1f50 commit 0696c28
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions src/test/ui/lifetimes/issue-77175.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#[deny(single_use_lifetimes)]
// edition:2018
// check-pass

// Prior to the fix, the compiler complained that the 'a lifetime was only used
// once. This was obviously wrong since the lifetime is used twice: For the s3
// parameter and the return type. The issue was caused by the compiler
// desugaring the async function into a generator that uses only a single
// lifetime, which then the validator complained about becauase of the
// single_use_lifetimes constraints.
async fn bar<'a>(s1: String, s2: &'_ str, s3: &'a str) -> &'a str {
s3
}

fn foo<'a>(s1: String, s2: &'_ str, s3: &'a str) -> &'a str {
s3
}

fn main() {}

0 comments on commit 0696c28

Please sign in to comment.