Add PointerKind to LpDeref
Prohibit assignment to `&mut` pointers that are found in frozen or borrowed locations.

Fixes #8625.
compilation error regexp specific to rustc.

Fix #6887.
revisions to emacs compilation regexp, more readable and robust.
extend file regexp to match files with embedded spaces.
Since we assume that GDB output is UTF-8, make sure it is so on all platforms.
Otherwise it'll choose some "appropriate" platform-specific default (e.g. CP1252 on Windows).
Un-disabled debug info tests on Windows.
Add script and tests for using keywords as identifiers
Make rekillable consistent with unkillable

As for now, rekillable is an unsafe function, instead, it should behave
just like unkillable by encapsulating unsafe code within an unsafe
block.

This patch does that and removes unsafe blocks that were encapsulating
rekillable calls throughout rust's libs.

Fixes #8232
Testing rekillable fails when called from outside an unkillable block
Don't make the runtime exit on illegal calls
Decrement unkillable counter before failing
Add a Default trait.
Fix deriving-zero test
auto merge of #8438 : cmr/rust/default, r=thestinger
Fix valgrind suppression on mac

This callstack changed when the FFI did. I am still a little frightened by
this suppression.
std: Make vec::from_elem failure-safe
auto merge of #8739 : fhahn/rust/ticket_2275, r=brson

This is a pull request for #2275

I've created a small python script to generate test files for a list of keywords (as break do else enum extern false fn for if impl let loop match mod mut priv pub ref return self static struct super true trait type unsafe use while), but I'm not really sure where to put it. I've added the created files as well.

I did not use 

     fn main() {
        let $KW = "foo"; //~ error
        println($KW); //~ error
    } 

as template, because for return, self, ref, loop, mut and break this does not raise an error in the ```println``` line, only in the ```let``` line.
Rewrote module tutorial
auto merge of #8747 : pnkfelix/rust/fsk-issue6887-fix-emacs-compilation-regexp, r=graydon

Fix #6887