rustdoc: Display rust logo again. Closes #13148
Derive TotalEq for std::intrinsics::TypeId

HashMap and HashSet require keys to implement TotalEq. This makes it possible to use TypeId as a HashMap key again.
Fix #13140: Early/Late Bound related ICEs.

The problem was that we need to apply the substitution, so that the
formal lifetime parameters get replaced with (unifiable)
free-lifetimes that can actually be fed into the constraint solver.

Also, refactor code os that substitution for `check_item` and
`check_method`, moving both down the control flow into `check_bare_fn`.

----

Finally, there was another (similar) spot where we needed to
substitute early-bound lifetimes when invoking an object method of a
trait.
Fix Repr impl for method::Candidate to include the method_ty.
Add test using early-bound lifetimes in trait generic parameters.
Added lint for #[deriving] structs and enums with unsafe pointers. #13032.
mk: Always touch libuv.a

libuv.a always looks out of date to the makefile, causing make to
always descend into the libuv makefile, even when there's nothing
to build.
serialize: use Result

All of Decoder and Encoder's methods now return a Result.

Encodable.encode() and Decodable.decode() return a Result as well.

fixes #12292
mk: Fix syntax error in installation target
auto merge of #13174 : brson/rust/dist, r=alexcrichton,huonw
auto merge of #13108 : pongad/rust/lintraw, r=huonw

Fixes #13032
auto merge of #13107 : seanmonstar/rust/encoder-errors, r=erickt

All of Decoder and Encoder's methods now return a Result.

Encodable.encode() and Decodable.decode() return a Result as well.

fixes #12292
auto merge of #13149 : brson/rust/rustdoclogo, r=alexcrichton
Rename Pod into Copy

Summary:
So far, we've used the term POD "Plain Old Data" to refer to types that
can be safely copied. However, this term is not consistent with the
other built-in bounds that use verbs instead. This patch renames the Pod
kind into Copy.

RFC: 0003-opt-in-builtin-traits

Test Plan: make check

Reviewers: cmr

Differential Revision: http://phabricator.octayn.net/D3
auto merge of #13154 : tomassedovic/rust/patch-1, r=alexcrichton

HashMap and HashSet require keys to implement TotalEq. This makes it possible to use TypeId as a HashMap key again.

Question for reviewers: assuming we want to support `HashMap<TypeId, whatever>`, would it make sense to add a relevant test? If so, should it go to libcollections or libstd?
auto merge of #13160 : FlaPer87/rust/rename-pod, r=thestinger

So far, we've used the term POD "Plain Old Data" to refer to types that
can be safely copied. However, this term is not consistent with the
other built-in bounds that use verbs instead. This patch renames the `Pod`
kind into `Copy`.

RFC: 0003-opt-in-builtin-traits

r? @nikomatsakis
Used inherited mutability in lexer::Reader.
De-@ TokenTree.
De-@ NamedMatch.
De-@ IdentInterner.