Set the `non_uppercase_statics` lint to warn by default
Update the `unused` lint group to include more lints
Improve the `non_snake_case` lint to give better suggestions
Output a note when lifetimes cannot be elided from functions
Add an explanatory note when calling a closure via `&`

Closes #15506.
Change the `use of moved value` error to be more accurate

Previously it output `partially moved` to eagerly. This updates it to be more
accurate and output `collaterally moved` for use of values that were invalidated
by moves out of different fields in the same struct.

Closes #15630.
Correct error message for invalid `ref`/`mut` bindings

Closes #15914.
Report trait/impl sig inconsistency before method/body inconsistency

Closes #15657.
Change rustc pretty-printing to print [T, ..n] instead of [T, .. n]