Add test
This commit is contained in:
parent
58fb508fe3
commit
8eaef3eca0
16
tests/ui/inline-const/using-late-bound-from-closure.rs
Normal file
16
tests/ui/inline-const/using-late-bound-from-closure.rs
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
// Test for ICE: cannot convert ReLateParam to a region vid
|
||||||
|
// https://github.com/rust-lang/rust/issues/125873
|
||||||
|
|
||||||
|
#![feature(closure_lifetime_binder)]
|
||||||
|
fn foo() {
|
||||||
|
let a = for<'a> |b: &'a ()| -> &'a () {
|
||||||
|
const {
|
||||||
|
let awd = ();
|
||||||
|
let _: &'a () = &awd;
|
||||||
|
//~^ `awd` does not live long enough
|
||||||
|
};
|
||||||
|
b
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {}
|
19
tests/ui/inline-const/using-late-bound-from-closure.stderr
Normal file
19
tests/ui/inline-const/using-late-bound-from-closure.stderr
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
error[E0597]: `awd` does not live long enough
|
||||||
|
--> $DIR/using-late-bound-from-closure.rs:9:29
|
||||||
|
|
|
||||||
|
LL | let a = for<'a> |b: &'a ()| -> &'a () {
|
||||||
|
| -- lifetime `'a` defined here
|
||||||
|
LL | const {
|
||||||
|
LL | let awd = ();
|
||||||
|
| --- binding `awd` declared here
|
||||||
|
LL | let _: &'a () = &awd;
|
||||||
|
| ------ ^^^^ borrowed value does not live long enough
|
||||||
|
| |
|
||||||
|
| type annotation requires that `awd` is borrowed for `'a`
|
||||||
|
LL |
|
||||||
|
LL | };
|
||||||
|
| - `awd` dropped here while still borrowed
|
||||||
|
|
||||||
|
error: aborting due to 1 previous error
|
||||||
|
|
||||||
|
For more information about this error, try `rustc --explain E0597`.
|
Loading…
Reference in New Issue
Block a user