Correctly generate drop glue for `Box<str>`

This fixes an ICE.  Closes issue #17734
String::truncate doc: also fails if not a char boundary
Fix cfg syntax warnings in libnative
auto merge of #17799 : ebfe/rust/cfg_warn, r=alexcrichton

Probably fallen through the cracks in #17630.
Add regression test for issue #17734
auto merge of #17762 : bkoropoff/rust/issue-17734, r=alexcrichton

Closes issue #17734

r? @nick29581
Handle emitting debug info for unboxed closures

This fixes an ICE.  Closes issue #17021
Build regression test for issue #17021 with -g

This causes it to hit the previously ICEing debuginfo codepath
Fix handling of struct variants in a couple of places

Fixes #17405.
Fixes #17518.
Fixes #17800.
auto merge of #17794 : SimonSapin/rust/patch-8, r=alexcrichton
work around yet another MinGW-w64 ASLR bug
auto merge of #17809 : thestinger/rust/windows, r=eddyb
auto merge of #17414 : jakub-/rust/issue-17405, r=alexcrichton

Fixes #17405.
Fixes #17518.
Fixes #17800.
Rename the file permission statics in std::io to be uppercase

For example, this renames `GroupRWX` to `GROUP_RWX`, and deprecates the old
name. Code using these statics should be updated accordingly.
Remove the #[allow(non_uppercase_statics)] attr from bitflags!
auto merge of #17781 : P1start/rust/bitflags-lints, r=alexcrichton

Closes #17773.
auto merge of #17803 : bkoropoff/rust/issue-17021, r=alexcrichton

This closes issue #17021.