mk: Get "make check" passing with --disable-rpath

This involves passing through LD_LIBRARY_PATH through more places, specifically
in the compiletest, run-make, and doctest runners.
Add link to libtest in doc index
Remove references to guide-conditions

std::condition was removed in 454882dcb7fdb03867d695a88335e2d2c8f7561a
but there are still links to the guide. Removing them.
auto merge of #12530 : alexcrichton/rust/make-check-no-rpath, r=brson

This involves passing through LD_LIBRARY_PATH through more places, specifically
in the compiletest, run-make, and doctest runners.
typeck: Remove old diagnostic that refers to `do`.
Use only the appropriate trait when looking up operator overloads.
resolve: Remove all the operator overloads from trait_map.
resolve: Don't use @RefCell in trait_map, nothing modifies its entries.
auto merge of #12537 : kballard/rust/add-test-to-doc-index, r=alexcrichton
test: Clean out the test suite a bit

This updates a number of ignore-test tests, and removes a few completely
outdated tests due to the feature being tested no longer being supported.

This brings a number of bench/shootout tests up to date so they're compiling
again. I make no claims to the performance of these benchmarks, it's just nice
to not have bitrotted code.

Closes #2604
Closes #9407
Add a method of manually specifying the crate map

Apparently weak linkage and dlopen aren't quite working out for applications
like servo on android. There appears to be a bug or two in how android loads
dynamic libraries and for some reason libservo.so isn't being found.

As a temporary solution, add an extern "C" function to libstd which can be
called if you have a handle to the crate map manually. When crawling the crate
map, we then check this manual symbol before falling back to the old solutions.

cc #11731
Update LLVM

Upstream LLVM has changed slightly such that our PassWrapper.cpp no longer
comiles (travis errors). This updates the bundled LLVM to the latest nightly
which will hopefully fix the travis errors we're seeing.
auto merge of #12408 : alexcrichton/rust/manual-crate-map, r=brson

Apparently weak linkage and dlopen aren't quite working out for applications
like servo on android. There appears to be a bug or two in how android loads
dynamic libraries and for some reason libservo.so isn't being found.

As a temporary solution, add an extern "C" function to libstd which can be
called if you have a handle to the crate map manually. When crawling the crate
map, we then check this manual symbol before falling back to the old solutions.

cc #11731
auto merge of #12457 : alexcrichton/rust/fix-some-tests, r=brson

This updates a number of ignore-test tests, and removes a few completely
outdated tests due to the feature being tested no longer being supported.

This brings a number of bench/shootout tests up to date so they're compiling
again. I make no claims to the performance of these benchmarks, it's just nice
to not have bitrotted code.

Closes #2604
Closes #9407
auto merge of #12493 : eddyb/rust/saner-overloads, r=nikomatsakis

Fixes #12402.
auto merge of #12539 : gmjosack/rust/master, r=alexcrichton

std::condition was removed in 454882dcb7fdb03867d695a88335e2d2c8f7561a
but there are still links to the guide. Removing them.
auto merge of #12548 : alexcrichton/rust/up-llvm, r=huonw,brson

Upstream LLVM has changed slightly such that our PassWrapper.cpp no longer
comiles (travis errors). This updates the bundled LLVM to the latest nightly
which will hopefully fix the travis errors we're seeing.
Implement upper, lower case conversion for char

Format auto-gen source with 4 spaces

Implement to lower, upper case for char