rustc: Obsolete the @ syntax entirely

This removes all remnants of `@` pointers from rustc. Additionally, this removes
the `GC` structure from the prelude as it seems odd exporting an experimental
type in the prelude by default.

Closes #14193
[breaking-change]
This commit is contained in:
Alex Crichton 2014-06-11 19:33:52 -07:00
parent f20b1293fc
commit ade807c6dc
239 changed files with 922 additions and 561 deletions

View file

@ -79,7 +79,7 @@ use owned_slice::OwnedSlice;
use std::collections::HashSet;
use std::mem::replace;
use std::rc::Rc;
use std::gc::Gc;
use std::gc::{Gc, GC};
#[allow(non_camel_case_types)]
#[deriving(PartialEq)]
@ -1342,6 +1342,8 @@ impl<'a> Parser<'a> {
} else if self.token == token::AT {
// MANAGED POINTER
self.bump();
let span = self.last_span;
self.obsolete(span, ObsoleteManagedType);
TyBox(self.parse_ty(plus_allowed))
} else if self.token == token::TILDE {
// OWNED POINTER
@ -2375,9 +2377,10 @@ impl<'a> Parser<'a> {
}
token::AT => {
self.bump();
let span = self.last_span;
self.obsolete(span, ObsoleteManagedExpr);
let e = self.parse_prefix_expr();
hi = e.span.hi;
// HACK: pretending @[] is a (removed) @-vec
ex = self.mk_unary(UnBox, e);
}
token::TILDE => {