Since `'self` is currently so common, and lifetimes are sometimes touchy to get correct, I think it would be good to have an obsolete syntax warning here. That is, when `tok` is `Self` it prints something like ``obsolete syntax: invalid `'self` lifetime; the restrictions have been removed, use any ident other than `self` here.``. 

Unfortunately our current mechanism for doing this (`parse/obsolete.rs`) requires a parser object, while this is too early. Others may have a better suggestion but maybe something like:

```rust
let mut msg = if token::is_keyword(token::keywords::Self, tok) {
    ~"obsolete syntax: ..."
} else {
    ~"invalid lifetime name"
};
fatal_span(rdr, start, rdr.last_pos, msg);
```