Cleanup: remove useless parameter
Test for issue #6338.
Pointers to bound variables are stored after all patterns are matched.

Pointers to bound variables shouldn't be stored before checking pattern,
otherwise piped patterns can conflict with each other (issue #6338).

Closes #6338.
Fix error message when trait method ends with wrong token

When parsing a trait function, the function must end with either `;` or
`{` (signifying a default implementation). The error message incorrectly
stated that it must be `;` or `}`.

Fixes #6610.
Better error message for unknown start of token

The span was fixed at some point to point to the correct character, but
the error message is still bad. Update it to emit the actual character
in question (potentially escaped).

Fixes #3747.
syntax: add a local_data_key macro that creates a key for access to the TLS.

This allows the internal implementation details of the TLS keys to be
changed without requiring the update of all the users. (Or, applying
changes that have to be applied for the keys to work correctly, e.g.
forcing LLVM to not merge these constants.)
doc: correct spelling in documentation.
doc: convert remaining uses of core:: to std::.
Implement DeepClone for str types.
Implement Clone and DeepClone for time types.
Add UUID support to libextra
- generate random UUIDs
- convert to and from strings and bytes
- parse common string formats
- implements Zero, Clone, FromStr, ToStr, Eq, TotalEq and Rand
- unit tests and documentation
- parsing error codes and strings
- incorporate feedback from PR review
auto merge of #8534 : huonw/rust/tls-key-macro, r=alexcrichton

This allows the internal implementation details of the TLS keys to be
changed without requiring the update of all the users. (Or, applying
changes that *have* to be applied for the keys to work correctly, e.g.
forcing LLVM to not merge these constants.)
Give XorShiftRng::new() a random seed

Fixes #8359.
debuginfo: Fixed option-like-enum test case so it does not rely on undefined behavior.
debuginfo: Generate template type parameters for generic functions.

Conflicts:
	src/librustc/lib/llvm.rs
	src/librustc/middle/trans/debuginfo.rs
	src/rustllvm/RustWrapper.cpp
	src/rustllvm/rustllvm.def.in
debuginfo: Properly handle monomorphization of generic functions.
debuginfo: Added test cases for generic structs and enums.

Also, always set no_monomorphic_collapse flags if debuginfo is generated.
debuginfo: Fixed crash occuring for parameterless closures.
debuginfo: Added support for self parameter in methods.
debuginfo: Added test cases for methods on structs, enums, traits, and tuple-structs.

Also new test cases for tuple structs and by-value parameter passing.