Open asomers opened 3 weeks ago
I don't think the change is going to get reverted or changed IMO. One workaround would be to add allow(dead_code)
to all affected structs, but that can easily hide potential problems. Another is to change all the private fields to public, and I think this was the suggestion in the upstream issue.
Sometime in the last week the rustc nightly compiler got more aggressive about reporting
dead_code
warnings. It now warns whenever a struct contains a private field but no constructor. That catches many structs in libc, which are intended to be initialized withstd::mem::zeroed()
. IMHO this is a rustc bug. This ought to be a separate lint so it can be silenced without silencing all dead_code warnings.Here's an example build failure: https://cirrus-ci.com/task/6392171014651904?logs=test#L17