1
Fork 0

Forbid ~str and ~[]

This corrects a rebasing error. Also adds a test so it won't happen again.
This commit is contained in:
Nick Cameron 2014-08-28 15:30:41 +12:00
parent f2b87e9ff0
commit 539237372a
2 changed files with 27 additions and 13 deletions

View file

@ -1427,14 +1427,10 @@ impl<'a> Parser<'a> {
} else if self.token == token::TILDE {
// OWNED POINTER
self.bump();
let span = self.last_span;
let last_span = self.last_span;
match self.token {
token::IDENT(ref ident, _)
if "str" == token::get_ident(*ident).get() => {
// This is OK (for now).
}
token::LBRACKET => {} // Also OK.
_ => self.obsolete(span, ObsoleteOwnedType)
token::LBRACKET => self.obsolete(last_span, ObsoleteOwnedVector),
_ => self.obsolete(last_span, ObsoleteOwnedType)
}
TyUniq(self.parse_ty(false))
} else if self.token == token::BINOP(token::STAR) {
@ -2563,13 +2559,10 @@ impl<'a> Parser<'a> {
}
token::TILDE => {
self.bump();
let span = self.last_span;
let last_span = self.last_span;
match self.token {
token::LIT_STR(_) => {
// This is OK (for now).
}
token::LBRACKET => {} // Also OK.
_ => self.obsolete(span, ObsoleteOwnedExpr)
token::LBRACKET => self.obsolete(last_span, ObsoleteOwnedVector),
_ => self.obsolete(last_span, ObsoleteOwnedExpr)
}
let e = self.parse_prefix_expr();