Don't warn about unsafe functions which don't need to be unsafe
Replaced many instances of reinterpret_cast with transmute
auto merge of #5978 : alexcrichton/rust/issue-5954, r=catamorphism

Closes #5954
auto merge of #5979 : Thiez/rust/no_reinterpret_cast, r=catamorphism

As the name suggests this replaces many instances of cast::reinterpret_cast by cast::transmute. It's essentially the boring part of fixing #5163, the remaining reinterpret_casts should be more tricky to remove (unless I missed a boring case).

r? @catamorphism
Implement a lint mode to deal with unused 'mut' variables
core: remove unused 'mut' variables
std: remove unused 'mut' variables
syntax: remove unused 'mut' variables
rustc: remove unused 'mut' variables
xfail two benchmarks that are failing on the bots
auto merge of #5986 : brson/rust/bench, r=brson
Changed shootout-fasta-redux to use size_t when calling fwrite, removed XFAIL
libcore: make rand::random return a generic value implementing `Rand`.
Rename Div operator trait to Quot and Modulo operator trait to Rem
auto merge of #5989 : Thiez/rust/fixbench, r=catamorphism

Partial fix for #5985
shootout-fasta-redux.rs was calling fwrite with u64 arguments that should have been size_t, which broke on 32-bit systems. I replaced the casts to u64 by casts to size_t.

r?
auto merge of #5987 : huonw/rust/generic-random, r=catamorphism

With this patch `rand::random` can be used to generate anything that implements `Rand`.
auto merge of #5990 : bjz/rust/rem-quot, r=catamorphism

This renaming, proposed in the [Numeric Bikeshed](https://github.com/mozilla/rust/wiki/Bikeshed-Numeric-Traits#rename-modulo-into-rem-or-remainder-in-traits-and-docs), will allow us to implement div and and modulo methods that follow the conventional mathematical definitions for negative numbers without altering the definitions of the operators (and confusing systems programmers). Here is a useful answer on StackOverflow that explains the difference between `div`/`mod` and `quot`/`rem` in Haskell: (When is the difference between quotRem and divMod useful?)[http://stackoverflow.com/a/339823/679485].

This is part of the numeric trait reforms tracked in issue #4819.
rt: Make the C stack segment accessible to runtime users.
auto merge of #5887 : jdm/rust/stackbounds, r=brson

This is needed to allow GC to work in SpiderMonkey.
Fix LLVM bug affecting i1 switches emitted for nullable enum match.