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.
document what unsafety means

Closes #9144
Add an extra line before the "Additional Help" in rustc's --help output
librustc: Respect #[link_name] on extern statics. Fixes #9270
Generate random big integers within a range

Thanks to @huonw for feedback
auto merge of #9258 : thestinger/rust/doc, r=catamorphism

Closes #9144
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())`.
auto merge of #9133 : dcrewi/rust/bigint-random-range, r=huonw
Document a few undocumented modules in libstd

Hopefull this will make our libstd docs appear a little more "full".
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.
std: Fix an invalid read in from_c_multistring

When `count` is `Some` this function was reading a byte past the end
of the buffer.
remove useless `rust_main` wrapper

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

When `count` is `Some` this function was reading a byte past the end
of the buffer.