auto merge of #6175 : Aatch/rust/red-zone-warn, r=sanxiyn

This has happened to two people trying to get Rust working on other platforms. Since it won't compile either way, make a nicer message for it (which will also point them straight to the correct file).
Issue 4391: rustc should not silently skip tests with erroneous signature.
mod items need to be marked with `cfg(test)` not `test`.
mod items need to be marked with `cfg(test)` not `test`.
Lets see if changing `span_fatal` to `span_err` gets me further through make check.
More cases of [cfg(test)] instead of [test].
More cases of [cfg(test)] instead of [test].
auto merge of #6111 : pnkfelix/rust/issue4391-rustc-should-not-silently-skip-erroneous-tests, r=pnkfelix

...e.

Fixes #4391.
core: inlining on common functions
libcore: optimize string joining routines.

This makes concat/connect/connect_slices about 20% faster, and takes
`repeat` from O(n^2) to O(n), and lowers the constant factor.
Explain that the source code was generated by this script
The following code was generated by "src/etc/unicode.py"
libcore: Export core::from_str::FromStr from core::prelude
Remove codes related to modes
auto merge of #6177 : gifnksm/rust/iter-chain, r=thestinger

`T: Iterator<A>` and `U: Iterator<A>` should be able to `chain` whether `T` and `U` are same or not.
auto merge of #6176 : thestinger/rust/libuv_optimize, r=thestinger

Closes #6142
auto merge of #6178 : erickt/rust/remove-drop, r=graydon

This patch removes ty::LegacyDtor, which is no longer used.
auto merge of #6182 : huonw/rust/core-str-opts, r=nikomatsakis

This adds #[inline] to many very common string routines (e.g. `len`).

It also rewrites `repeat` to not use `+=` and make it O(n) rather than O(n^2), and also concat/connect(_slices) to reduce the overhead of reallocations, and constantly `set_len`ing (etc) in `push_str`. (The added complexity might not be worth the 20% speedup though.)
Use static strings
make link_args use spaces as separators

Lots of linking arguments need to be passed as -Wl,--foo so giving the
comma meaning at the rustc layer makes those flags impossible to pass.

Multiple arguments can now be passed from a shell by quoting the
argument: --link-args='-lfoo -Wl,--as-needed'.