compiletest: Remove superfluous to_string calls
librustc: Remove cross borrowing from mutable `Box`es to `&mut`.

This will break code like:

    fn f(x: &mut int) {}

    let mut a = box 1i;
    f(a);

Change it to:

    fn f(x: &mut int) {}

    let mut a = box 1i;
    f(&mut *a);

RFC 33; issue #10504.

[breaking-change]
Fix a typo in fmt.rs
Fix wrong type name: IoError<()> -> IoResult<()>
auto merge of #15174 : alco/rust/patch-1, r=alexcrichton
Make an example more clear with sample code.

Fixes #11113.
auto merge of #15121 : steveklabnik/rust/matching_docs, r=alexcrichton

Fixes #11113.
auto merge of #15173 : Sawyer47/rust/de-to-string, r=alexcrichton
auto merge of #15171 : pcwalton/rust/remove-cross-borrowing, r=brson

This will break code like:

    fn f(x: &mut int) {}

    let mut a = box 1i;
    f(a);

Change it to:

    fn f(x: &mut int) {}

    let mut a = box 1i;
    f(&mut *a);

RFC 33; issue #10504.

[breaking-change]

r? @brson
tidy macro just a bit
revive old commented-out test cases as ignored test cases for hygiene
comments only
enrich and rename crate_idents test case
add unit test for match var hygiene
remove unneeded visit_ty methods
remove unneccessary pubs, shorten names
remove misleading and unnecessary underscores
don't expand subexprs of for loop, just re-expand whole thing.

Fixes #15167
added compile-fail test for 15167
make macros hygienic