Skip to content

Commit 68cb536

Browse files
committed
libsyntax: Stop parsing const.
1 parent 85c9fc6 commit 68cb536

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

src/libsyntax/parse/obsolete.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ pub enum ObsoleteSyntax {
6060
ObsoleteConstManagedPointer,
6161
ObsoletePurity,
6262
ObsoleteStaticMethod,
63+
ObsoleteConstItem,
6364
}
6465

6566
impl to_bytes::IterBytes for ObsoleteSyntax {
@@ -203,6 +204,11 @@ pub impl Parser {
203204
"`static` notation",
204205
"`static` is superfluous; remove it"
205206
),
207+
ObsoleteConstItem => (
208+
"`const` item",
209+
"`const` items are now `static` items; replace `const` with \
210+
`static`"
211+
),
206212
};
207213

208214
self.report(sp, kind, kind_str, desc);

src/libsyntax/parse/parser.rs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ use parse::obsolete::{ObsoleteBareFnType, ObsoleteNewtypeEnum};
8181
use parse::obsolete::{ObsoleteMode, ObsoleteImplicitSelf};
8282
use parse::obsolete::{ObsoleteLifetimeNotation, ObsoleteConstManagedPointer};
8383
use parse::obsolete::{ObsoletePurity, ObsoleteStaticMethod};
84+
use parse::obsolete::{ObsoleteConstItem};
8485
use parse::prec::{as_prec, token_to_binop};
8586
use parse::token::{can_begin_expr, is_ident, is_ident_or_path};
8687
use parse::token::{is_plain_ident, INTERPOLATED, special_idents};
@@ -3563,7 +3564,9 @@ pub impl Parser {
35633564
let lo = self.span.lo;
35643565

35653566
// XXX: Obsolete; remove after snap.
3566-
if !self.eat_keyword(&~"const") {
3567+
if self.eat_keyword(&~"const") {
3568+
self.obsolete(*self.last_span, ObsoleteConstItem);
3569+
} else {
35673570
self.expect_keyword(&~"static");
35683571
}
35693572

@@ -3959,6 +3962,9 @@ pub impl Parser {
39593962
(self.is_keyword(&~"static") &&
39603963
!self.token_is_keyword(&~"fn", &self.look_ahead(1)))) {
39613964
// CONST ITEM
3965+
if self.is_keyword(&~"const") {
3966+
self.obsolete(*self.span, ObsoleteConstItem);
3967+
}
39623968
self.bump();
39633969
let (ident, item_, extra_attrs) = self.parse_item_const();
39643970
return iovi_item(self.mk_item(lo, self.last_span.hi, ident, item_,

0 commit comments

Comments
 (0)