You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are a number of common tricks to writing unsafe Rust that tend to be just passed around as received wisdom, but it's not particularly easy or obvious. For some use cases using unsafe pointers is just easier, so we should cater to this with nicer library functions. This is an open-ended task to identify common unsafe patterns and extract them into the standard library. The only things I have in mind off hand are alloc and free functions to encapsulate the transmutes from unique pointers.
The text was updated successfully, but these errors were encountered:
new lint: `missing_fields_in_debug`
Fixesrust-lang#10429
This PR adds a new lint that looks for manual `Debug` implementations that do not "use" all of the fields.
This often happens when adding a new field to a struct.
It also acts as a style lint in case leaving out a field was intentional. In that case, it's preferred to use [`DebugStruct::finish_non_exhaustive`](https://doc.rust-lang.org/stable/std/fmt/struct.DebugStruct.html#method.finish_non_exhaustive), which indicates that there are more fields that were explicitly not shown.
```
changelog: [`missing_fields_in_debug`]: missing fields in manual `Debug` implementation
```
There are a number of common tricks to writing unsafe Rust that tend to be just passed around as received wisdom, but it's not particularly easy or obvious. For some use cases using unsafe pointers is just easier, so we should cater to this with nicer library functions. This is an open-ended task to identify common unsafe patterns and extract them into the standard library. The only things I have in mind off hand are
alloc
andfree
functions to encapsulate the transmutes from unique pointers.The text was updated successfully, but these errors were encountered: