The purpose of these headers is to fix issues with mingw v4.0, as described in #9246.

This works by adding this directory to GCC include search path before mingw system headers directories,
so we can intercept their inclusions and add missing definitions without having to modify files in mingw/include.
Disabled tests which now fail on Windows+mingw4.0 due to GCC 4.8 ABI change (#9205).
These really should have been marked xfail-win32, but that doesn't exist, so xfail-fast it is.
pp: typo in comment
pp: also print bounds in paths with no generic params

Since 3b6314c3 the pretty printer seems to only print trait bounds for
`ast::ty_path(...)`s that have a generics arguments list. That seems
wrong, so let's always print them.

Closes #9253, un-xfails test for #7673.
Add an extra line before the "Additional Help" in rustc's --help output
librustc: Respect #[link_name] on extern statics. Fixes #9270
std: Remove {float,f64,f32}::from_str in favor of from_str

Like issue #9209, remove float::{from_str, from_str_radix} in favor of
the two corresponding traits. The same for modules f64 and f32.

New usage is

	from_str::<float>("1.2e34")
fix compilation errors of mips target
std: Remove Option.or_{default,zero}

These can be replaced with `Some(option.or_default())`.
Added support for a `\0` escape sequence.

This commit adds support for `\0` escapes in character and string literals.

Since `\0` is equivalent to `\x00`, this is a direct translation to the latter
escape sequence. Future builds will be able to compile using `\0` directly.

Also updated the grammar specification and added a test for NUL characters.
extra: minor cleanup of Zero and Default syntax extension
std::borrow: Use raw pointer comparison for `ref_eq`

Compare as `*T` in `ref_eq` instead of casting to uint, to match what
std::ptr does.
remove useless `rust_main` wrapper

the real entry point will now pass the user's main function directly to
the scheduler
auto merge of #9248 : DanRosenwasser/rust/master, r=alexcrichton

Since `
auto merge of #9254 : vadimcn/rust/fix-mingw-v4, r=brson

Fix Rust build on mingw v4.0
See #9246 for details.
auto merge of #9264 : ben0x539/rust/pp-work, r=alexcrichton

Since 3b6314c the pretty printer seems to only print trait bounds for `ast::ty_path(...)`s that have a generics arguments list. That seems wrong, so let's always print them.

Closes #9253, un-xfails test for #7673.
Remove and replace cond! Closes #9282.
auto merge of #9271 : brson/rust/extra-help, r=catamorphism

Look like this now

```
    -Z FLAG             Set internal debugging options
    -v --version        Print version info and exit

Additional help:
    -W help             Print 'lint' options and default settings
    -Z help             Print internal options for debugging rustc

```
auto merge of #9272 : luqmana/rust/esln, r=catamorphism

Fixes #9270
auto merge of #9275 : blake2-ppc/rust/float-from-str, r=thestinger

std: Remove {float,f64,f32}::from_str in favor of from_str in the prelude

Like issue #9209, remove float::{from_str, from_str_radix} in favor of
the two corresponding traits. The same for modules f64 and f32.

New usage is:

    from_str::<float>("1.2e34")