-
Notifications
You must be signed in to change notification settings - Fork 13.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reinitialize the dropflag hint in bindings #27413
Conversation
Such bindings can occur in loops, and thus the binding can be executed after a previous move cleared the flag, thus necessitating the flag be reset to `DTOR_NEEDED_HINT`. Fix rust-lang#27401.
(rust_highfive has picked a reviewer for you, use r? to override) |
hat-tip to @alexcrichton for narrowing down the crates.io unit test failures that exposed this bug! |
r+ --- seems good, the only nit is that there could be a test for the dummy local case |
⌛ Testing commit c681d30 with merge eb16343... |
💔 Test failed - auto-mac-64-opt |
@bors: retry On Fri, Jul 31, 2015 at 1:13 AM, bors notifications@github.com wrote:
|
@bors p=1 |
(i upp'ed priority because I want to get quicker feedback about problems in landing this PR, since I want to ensure it gets into beta but I may be traveling during the time that beta is cut.) |
Reinitialize the dropflag hint in occurrences of variable bindings. Such bindings can occur in loops, and thus the binding can be executed after a previous move cleared the flag, thus necessitating the flag be reset to `DTOR_NEEDED_HINT`. Fix #27401.
💔 Test failed - auto-mac-32-opt |
An update: this PR appears to either inject a double-free, or somehow expose a latent one. My suspicion is that the double-free is being "injected", though the real bug is probably somewhere deeper in the non-zeroing moves implementation. Still looking. |
☔ The latest upstream changes (presumably #27529) made this pull request unmergeable. Please resolve the merge conflicts. |
closing for now; I'll revive this later, but for the short-term we're just disabling NZM; see #27582 |
Reinitialize the dropflag hint in occurrences of variable bindings.
Such bindings can occur in loops, and thus the binding can be executed after a previous move cleared the flag, thus necessitating the flag be reset to
DTOR_NEEDED_HINT
.Fix #27401.