summaryrefslogtreecommitdiffstats
path: root/tests/ui/borrowck/suggest-lt-on-ty-alias-w-generics.stderr
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 02:49:50 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 02:49:50 +0000
commit9835e2ae736235810b4ea1c162ca5e65c547e770 (patch)
tree3fcebf40ed70e581d776a8a4c65923e8ec20e026 /tests/ui/borrowck/suggest-lt-on-ty-alias-w-generics.stderr
parentReleasing progress-linux version 1.70.0+dfsg2-1~progress7.99u1. (diff)
downloadrustc-9835e2ae736235810b4ea1c162ca5e65c547e770.tar.xz
rustc-9835e2ae736235810b4ea1c162ca5e65c547e770.zip
Merging upstream version 1.71.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/borrowck/suggest-lt-on-ty-alias-w-generics.stderr')
-rw-r--r--tests/ui/borrowck/suggest-lt-on-ty-alias-w-generics.stderr43
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/ui/borrowck/suggest-lt-on-ty-alias-w-generics.stderr b/tests/ui/borrowck/suggest-lt-on-ty-alias-w-generics.stderr
new file mode 100644
index 000000000..28b4b4aa2
--- /dev/null
+++ b/tests/ui/borrowck/suggest-lt-on-ty-alias-w-generics.stderr
@@ -0,0 +1,43 @@
+error: lifetime may not live long enough
+ --> $DIR/suggest-lt-on-ty-alias-w-generics.rs:4:5
+ |
+LL | fn test(x: &i32) -> Lazy<i32> {
+ | - let's call the lifetime of this reference `'1`
+LL | / Box::new(|| {
+LL | |
+LL | |
+LL | | *x
+LL | | })
+ | |______^ returning this value requires that `'1` must outlive `'static`
+ |
+help: to declare that the trait object captures data from argument `x`, you can add a lifetime parameter `'a` in the type alias
+ |
+LL | type Lazy<'a, T> = Box<dyn Fn() -> T + 'a>;
+ | +++ ~~
+
+error[E0373]: closure may outlive the current function, but it borrows `x`, which is owned by the current function
+ --> $DIR/suggest-lt-on-ty-alias-w-generics.rs:4:14
+ |
+LL | Box::new(|| {
+ | ^^ may outlive borrowed value `x`
+...
+LL | *x
+ | -- `x` is borrowed here
+ |
+note: closure is returned here
+ --> $DIR/suggest-lt-on-ty-alias-w-generics.rs:4:5
+ |
+LL | / Box::new(|| {
+LL | |
+LL | |
+LL | | *x
+LL | | })
+ | |______^
+help: to force the closure to take ownership of `x` (and any other referenced variables), use the `move` keyword
+ |
+LL | Box::new(move || {
+ | ++++
+
+error: aborting due to 2 previous errors
+
+For more information about this error, try `rustc --explain E0373`.