Add detection of dead struct fields
Remove the dead code identified by the new lint
Fix an LLVM assertion when matching against static strings

Fixes #8315
Fixes #11940
Remove a redundant bitcast from fail!() handling
Mark relevant structs with repr(C)
Moved integer trait and functions to submodule
Cleanup bigint
librustc: Implement overloading for the call operator behind a feature
gate.

This is part of unboxed closures.
std: Read HOME instead of USER

Apparently one of the linux bots doesn't have the USER variable defined, and
this fix will likely land more quickly than a fix to the bots.
Add missing repr(C) annotations to mutex.rs
auto merge of #14775 : alexcrichton/rust/fix-master, r=brson

Apparently one of the linux bots doesn't have the USER variable defined, and
this fix will likely land more quickly than a fix to the bots.
Implement #[plugin_registrar]

See RFC 22.

[breaking-change]
Use phase(plugin) in bootstrap crates

Do this to avoid warnings on post-stage0 builds.
Use phase(plugin) in other crates
Use phase(plugin) in tests
Convert libraries to use #[plugin_registrar]
Convert tests to use #[plugin_registrar]
Add a test for deprecated phase(syntax)
Document rustc::plugin
Macro crates now depend on librustc