Do not allow moving out of thread local under ast borrowck#55150
Conversation
…e not quite rvalues (and of course they are not quite statics either). Namely, they *do* have a restricted region (like rvalues), but they also cannot be moved out of (like statics).
…read-local mem category.
|
r? @estebank (rust_highfive has picked a reviewer for you, use r? to override) |
|
r? @eddyb |
|
One might reasonably ask: "Why add new checks to AST-borrowck rather than focus on NLL." I basically estimated the effort it would take to implementing reporting a "nice" error from drop-elaboration, and decided that this was a much better approach. |
|
@bors r+ |
|
📌 Commit 1d46ce5 has been approved by |
…-from-moving-out-of-thread-local-under-ast-borrowck, r=nikomatsakis Do not allow moving out of thread local under ast borrowck AST borrowck failed to prevent moving out of a thread-local static. This was broken. And it also (sometimes?) caused an ICE during drop elaboration. Fix rust-lang#47215 Fix rust-lang#54797
…-from-moving-out-of-thread-local-under-ast-borrowck, r=nikomatsakis Do not allow moving out of thread local under ast borrowck AST borrowck failed to prevent moving out of a thread-local static. This was broken. And it also (sometimes?) caused an ICE during drop elaboration. Fix rust-lang#47215 Fix rust-lang#54797
|
⌛ Testing commit 1d46ce5 with merge a5e6e159a64c676dc8a959db771d0ab5cc84f169... |
|
💔 Test failed - status-travis |
|
The job Click to expand the log.I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
|
@bors retry |
|
☀️ Test successful - status-appveyor, status-travis |
AST borrowck failed to prevent moving out of a thread-local static.
This was broken. And it also (sometimes?) caused an ICE during drop elaboration.
Fix #47215
Fix #54797