From 239e64242c2f35b223403be611ad6a25ce8e76c2 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Tue, 5 Mar 2013 17:36:59 -0800 Subject: libsyntax: Stop parsing structural record types --- src/libsyntax/parse/obsolete.rs | 5 +++++ src/libsyntax/parse/parser.rs | 2 ++ 2 files changed, 7 insertions(+) (limited to 'src/libsyntax/parse') diff --git a/src/libsyntax/parse/obsolete.rs b/src/libsyntax/parse/obsolete.rs index 93d3d952cdd..dbb44858761 100644 --- a/src/libsyntax/parse/obsolete.rs +++ b/src/libsyntax/parse/obsolete.rs @@ -49,6 +49,7 @@ pub enum ObsoleteSyntax { ObsoleteMutOwnedPointer, ObsoleteMutVector, ObsoleteTraitImplVisibility, + ObsoleteRecordType, } impl to_bytes::IterBytes for ObsoleteSyntax { @@ -145,6 +146,10 @@ pub impl Parser { because the `impl...for...` form defines overloads for \ methods that already exist; remove the `pub` or `priv`" ), + ObsoleteRecordType => ( + "structural record type", + "use a structure instead" + ), }; self.report(sp, kind, kind_str, desc); diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index eb9831cd9f3..cb4a2ce6920 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -75,6 +75,7 @@ use parse::obsolete::{ObsoleteSyntax, ObsoleteLowerCaseKindBounds}; use parse::obsolete::{ObsoleteUnsafeBlock, ObsoleteImplSyntax}; use parse::obsolete::{ObsoleteTraitBoundSeparator, ObsoleteMutOwnedPointer}; use parse::obsolete::{ObsoleteMutVector, ObsoleteTraitImplVisibility}; +use parse::obsolete::{ObsoleteRecordType}; use parse::prec::{as_prec, token_to_binop}; use parse::token::{can_begin_expr, is_ident, is_ident_or_path}; use parse::token::{is_plain_ident, INTERPOLATED, special_idents}; @@ -657,6 +658,7 @@ pub impl Parser { if elems.len() == 0 { self.unexpected_last(&token::RBRACE); } + self.obsolete(*self.last_span, ObsoleteRecordType); ty_rec(elems) } else if *self.token == token::LBRACKET { self.expect(&token::LBRACKET); -- cgit 1.4.1-3-g733a5