Fixed deprecation warning text for mem::move_val_init and its associated comment.
configure: Move clang's libcpp out into flag
configure: Only use -m32 on x86-* 32 bit systems
configure: setup triples on hf arm platforms
Rename UTF16Item[s] to Utf16Item[s]

According to Rust's style guide acronyms should be CamelCase.

[breaking-change]
auto merge of #14463 : SergioBenitez/rust/deprecation-fix, r=alexcrichton

The deprecation warning text for mem::move_val_init was incorrect. It should point users to `overwrite` instead of itself.
Move trait impls for primitives near trait definition

Closes #12925
auto merge of #14437 : Sawyer47/rust/utf16-items, r=alexcrichton

According to Rust's style guide acronyms should be CamelCase.
auto merge of #13738 : buttslol/rust/armv7-support, r=alexcrichton

This was required to get ./configure to work on my armv7 test machine.

I haven't found anything sane to feature gate `hf` on that's pokable from the context of the configure script.

It also seems that gcc doesn't work on armv7 by default (rust wants to pass it `-m32` which isn't supported), would it be preferential to make the default `--enable-clang` on arm, or remove the `-m32` flag on that platform?
auto merge of #14464 : Sawyer47/rust/issue-12925, r=alexcrichton

This is an attempt of fixing #12925.

This PR moves almost all trait implementations for primitive types ((), bool, char, i*, u*, f*) near trait definitions. Only Float trait implementations weren't moved because they heavily rely on constants defined in f32.rs and f64.rs.

Some trait implementations had cfg(not(test)) attribute. I suspect it's because of issue 2912.
Still, someone who knows the problem better should probably check this code.

Closes #12925
Silence warning in RefCell test suite
Add AST node for pattern macros
Add patterns to MacResult
Expand macros in patterns
Parse macros in patterns

Fixes #6830.
Test pattern macros
auto merge of #14298 : kmcallister/rust/pattern-macros, r=huonw

First commit is an unrelated fix for a test suite warning I introduced last week.
rustc: Update how Gc<T> is recognized

This commit uses the same trick as ~/Box to map Gc<T> to @T internally inside
the compiler. This moves a number of implementations of traits to the `gc`
module in the standard library.

This removes functions such as `Gc::new`, `Gc::borrow`, and `Gc::ptr_eq` in
favor of the more modern equivalents, `box(GC)`, `Deref`, and pointer equality.

The Gc pointer itself should be much more useful now, and subsequent commits
will move the compiler away from @T towards Gc<T>

[breaking-change]
syntax: Move the AST from @T to Gc<T>
rustc: Move the AST from @T to Gc<T>