Make shift_ref and mut_shift_ref return Option instead of failing
Make pop_ref and mut_pop_ref return Option instead of failing on empty vectors
Make mut_last return Option instead of failing on empty vector (and add a test for mut_last)
Handle attributes on cross-crate tuple-structs correctly

Fixes #11741
Make next_power_of_two generic for unsigned integers

Also rename `next_power_of_two_opt` to `checked_next_power_of_two`.
Remove some unused imports
Remove free-standing div functions in std::uint
Move int and uint overflow tests into macros
Added minmax function.
Tests ok
auto merge of #11789 : pongad/rust/master, r=kballard

All tests passing. #5268
auto merge of #11963 : alexcrichton/rust/fix-rustpkg, r=brson

Right now the bots are all injecting a libstd version, so all the rustpkg tests
are passing. All rustpkg compilations will fail unless the version number is
explicitly given because rustpkg attempts to exactly guess the target file name.
Switch back to using a pattern match in order to unbreak tests.

Closes #11852
auto merge of #11930 : bjz/rust/next_power_of_two, r=huonw
auto merge of #11932 : dmanescu/rust/11741-stability-cross-crate, r=alexcrichton

Fixes #11741
Added tests and removed xfail-fast from run-pass/simd-experimental which is now fixed (see #11738).
auto merge of #11944 : nathanielherman/rust/vec_opt, r=alexcrichton

Closes #11733
Move doc/ to src/doc/

We generate documentation into the doc/ directory, so we shouldn't be
intermingling source files with generated files
Remove VPATH usage in Makefiles

This is just messing up all the doc dependencies because of such similar
directory names and file names.

Closes #11422
Rewrite the doc makefile for doc => src/doc

This continues to generate all documentation into doc, but it now looks for
source files in src/doc

Closes #11860
Closes #11970