Update error message on compile
Single curly braces instead of double are being used
Add example of estimating pi using Monte Carlo simulation to std::rand
Add division by zero case to the `CheckedDiv` comment
Remove the dist function; it is more efficient to compare squared distances
Guide: patterns.

Fixes #4417.
Guide: iterators
Guide: array subscript notation
Properly canonicalize crate paths specified via --extern

Crates that are resolved normally have their path canonicalized and all
symlinks resolved. This does currently not happen for paths specified
using the --extern option to rustc, which can lead to rustc thinking
that it encountered two different versions of a crate, when it's
actually the same version found through different paths.

To fix this, we must store the canonical path for crates found via
--extern and also use the canonical path when comparing paths.

Fixes #16496
Fix builds with LLVM < 3.6
mark &T params without UnsafeCell<U> as readonly

These are already marked as `noalias` due to the immutability guarantee
(see 4c2d4cd3dea344e81e4df24382ac3f23e2f86f40), but more information can
be bubbled up to the caller via `readonly`.
vim: Don't set foldmethod in the syntax file either

We shouldn't be setting any settings in the syntax file. Better to put
them in the ftplugin, where they won't be pulled in by :syn-include and
can be cleaned up when changing the filetype.
Register new snapshots

Hopefully this will fix #16489!
auto merge of #16520 : dotdash/rust/fix_llvm_before_36, r=thestinger
enable DEP (NX bit) for 32-bit Windows executables

This is already enabled by default for x86_64 executables on Windows,
but it needs to be manually enabled on x86.

Closes #16533
vim: Update syntax file for Prelude changes.

Lots of Vector -> Slice renames.
auto merge of #16525 : thestinger/rust/readonly, r=pcwalton

These are already marked as `noalias` due to the immutability guarantee
(see 4c2d4cd3dea344e81e4df24382ac3f23e2f86f40), but more information can
be bubbled up to the caller via `readonly`.
auto merge of #16527 : kballard/rust/vim_fold, r=chris

We shouldn't be setting any settings in the syntax file. Better to put
them in the ftplugin, where they won't be pulled in by :syn-include and
can be cleaned up when changing the filetype.
auto merge of #16534 : thestinger/rust/dep, r=huonw

This is already enabled by default for x86_64 executables on Windows,
but it needs to be manually enabled on x86.

Closes #16533
auto merge of #16505 : dotdash/rust/extern_realpath, r=alexcrichton

Crates that are resolved normally have their path canonicalized and all
symlinks resolved. This does currently not happen for paths specified
using the --extern option to rustc, which can lead to rustc thinking
that it encountered two different versions of a crate, when it's
actually the same version found through different paths.

Fixes #16496