diff options
| author | Niko Matsakis <niko@alum.mit.edu> | 2018-08-07 14:50:36 -0400 |
|---|---|---|
| committer | Niko Matsakis <niko@alum.mit.edu> | 2018-08-07 15:05:16 -0400 |
| commit | 3b7989d1dffb0d1b36dd8f4a7b11ea98ed7dc2ba (patch) | |
| tree | b71d00a961029b2f55f5c13179ec1fe45d5f1772 /src/test/ui/borrowck | |
| parent | 887296e8c32165de83deb5156f0255c1f286ee6a (diff) | |
avoid computing liveness when a variable doesn't need it
In particular, we skip computing liveness for a variable X if all the regions in its type are known to outlive free regions.
Diffstat (limited to 'src/test/ui/borrowck')
| -rw-r--r-- | src/test/ui/borrowck/promote-ref-mut-in-let-issue-46557.nll.stderr | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/src/test/ui/borrowck/promote-ref-mut-in-let-issue-46557.nll.stderr b/src/test/ui/borrowck/promote-ref-mut-in-let-issue-46557.nll.stderr index 95acdab3e80..52f1547bce6 100644 --- a/src/test/ui/borrowck/promote-ref-mut-in-let-issue-46557.nll.stderr +++ b/src/test/ui/borrowck/promote-ref-mut-in-let-issue-46557.nll.stderr @@ -1,30 +1,24 @@ error[E0597]: borrowed value does not live long enough --> $DIR/promote-ref-mut-in-let-issue-46557.rs:15:21 | -LL | fn gimme_static_mut_let() -> &'static mut u32 { - | _______________________________________________- -LL | | let ref mut x = 1234543; //~ ERROR - | | ^^^^^^^ temporary value does not live long enough -LL | | x -LL | | } - | | - - | | | - | |_temporary value only lives until here - | borrow later used here +LL | let ref mut x = 1234543; //~ ERROR + | ^^^^^^^ temporary value does not live long enough +LL | x +LL | } + | - temporary value only lives until here + | + = note: borrowed value must be valid for the static lifetime... error[E0597]: borrowed value does not live long enough --> $DIR/promote-ref-mut-in-let-issue-46557.rs:20:25 | -LL | fn gimme_static_mut_let_nested() -> &'static mut u32 { - | ______________________________________________________- -LL | | let (ref mut x, ) = (1234543, ); //~ ERROR - | | ^^^^^^^^^^^ temporary value does not live long enough -LL | | x -LL | | } - | | - - | | | - | |_temporary value only lives until here - | borrow later used here +LL | let (ref mut x, ) = (1234543, ); //~ ERROR + | ^^^^^^^^^^^ temporary value does not live long enough +LL | x +LL | } + | - temporary value only lives until here + | + = note: borrowed value must be valid for the static lifetime... error[E0597]: borrowed value does not live long enough --> $DIR/promote-ref-mut-in-let-issue-46557.rs:25:11 |
