diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2013-03-06 14:14:06 -0800 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2013-03-07 22:37:57 -0800 |
| commit | 9a17ef9b5285bff753e4585f74beebd6fb3cf415 (patch) | |
| tree | 0b31bf9b64d571ed64cb54efc5f8f9e2bdfbd46d /src/libsyntax | |
| parent | d7e74b5e91b0b6b6a5613f54479d2ef9fe9c392f (diff) | |
| download | rust-9a17ef9b5285bff753e4585f74beebd6fb3cf415.tar.gz rust-9a17ef9b5285bff753e4585f74beebd6fb3cf415.zip | |
librustc: Stop parsing `assert`.
Diffstat (limited to 'src/libsyntax')
| -rw-r--r-- | src/libsyntax/ast.rs | 3 | ||||
| -rw-r--r-- | src/libsyntax/fold.rs | 1 | ||||
| -rw-r--r-- | src/libsyntax/parse/obsolete.rs | 5 | ||||
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 7 | ||||
| -rw-r--r-- | src/libsyntax/print/pprust.rs | 4 | ||||
| -rw-r--r-- | src/libsyntax/visit.rs | 3 |
6 files changed, 10 insertions, 13 deletions
diff --git a/src/libsyntax/ast.rs b/src/libsyntax/ast.rs index 0581f5f96b0..a6ccd69dd06 100644 --- a/src/libsyntax/ast.rs +++ b/src/libsyntax/ast.rs @@ -599,9 +599,6 @@ pub enum expr_ { expr_ret(Option<@expr>), expr_log(log_level, @expr, @expr), - /* just an assert */ - expr_assert(@expr), - expr_mac(mac), // A struct literal expression. diff --git a/src/libsyntax/fold.rs b/src/libsyntax/fold.rs index ea18598f75c..b8371c9e8d9 100644 --- a/src/libsyntax/fold.rs +++ b/src/libsyntax/fold.rs @@ -561,7 +561,6 @@ pub fn noop_fold_expr(e: &expr_, fld: @ast_fold) -> expr_ { fld.fold_expr(e) ) } - expr_assert(e) => expr_assert(fld.fold_expr(e)), expr_mac(ref mac) => expr_mac(fold_mac((*mac))), expr_struct(path, ref fields, maybe_expr) => { expr_struct( diff --git a/src/libsyntax/parse/obsolete.rs b/src/libsyntax/parse/obsolete.rs index 4e1b34bb299..6f2d2c554aa 100644 --- a/src/libsyntax/parse/obsolete.rs +++ b/src/libsyntax/parse/obsolete.rs @@ -51,6 +51,7 @@ pub enum ObsoleteSyntax { ObsoleteTraitImplVisibility, ObsoleteRecordType, ObsoleteRecordPattern, + ObsoleteAssertion, } impl to_bytes::IterBytes for ObsoleteSyntax { @@ -155,6 +156,10 @@ pub impl Parser { "structural record pattern", "use a structure instead" ), + ObsoleteAssertion => ( + "assertion", + "use `fail_unless!()` instead" + ), }; self.report(sp, kind, kind_str, desc); diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index 0dba2bd45e1..384cf4f0e95 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -21,7 +21,7 @@ use ast::{blk_check_mode, box, by_copy, by_ref, by_val}; use ast::{crate, crate_cfg, decl, decl_item}; use ast::{decl_local, default_blk, deref, div, enum_def, enum_variant_kind}; use ast::{expl, expr, expr_, expr_addr_of, expr_match, expr_again}; -use ast::{expr_assert, expr_assign, expr_assign_op, expr_binary, expr_block}; +use ast::{expr_assign, expr_assign_op, expr_binary, expr_block}; use ast::{expr_break, expr_call, expr_cast, expr_copy, expr_do_body}; use ast::{expr_field, expr_fn_block, expr_if, expr_index}; use ast::{expr_lit, expr_log, expr_loop, expr_loop_body, expr_mac}; @@ -76,6 +76,7 @@ use parse::obsolete::{ObsoleteUnsafeBlock, ObsoleteImplSyntax}; use parse::obsolete::{ObsoleteTraitBoundSeparator, ObsoleteMutOwnedPointer}; use parse::obsolete::{ObsoleteMutVector, ObsoleteTraitImplVisibility}; use parse::obsolete::{ObsoleteRecordType, ObsoleteRecordPattern}; +use parse::obsolete::{ObsoleteAssertion}; 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}; @@ -1208,8 +1209,8 @@ pub impl Parser { self.expect(&token::RPAREN); } else if self.eat_keyword(&~"assert") { let e = self.parse_expr(); - ex = expr_assert(e); - hi = e.span.hi; + ex = expr_copy(e); // whatever + self.obsolete(*self.last_span, ObsoleteAssertion); } else if self.eat_keyword(&~"return") { if can_begin_expr(&*self.token) { let e = self.parse_expr(); diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs index d87238c720e..4a8176abc6f 100644 --- a/src/libsyntax/print/pprust.rs +++ b/src/libsyntax/print/pprust.rs @@ -1427,10 +1427,6 @@ pub fn print_expr(s: @ps, &&expr: @ast::expr) { } } } - ast::expr_assert(expr) => { - word_nbsp(s, ~"assert"); - print_expr(s, expr); - } ast::expr_mac(ref m) => print_mac(s, (*m)), ast::expr_paren(e) => { popen(s); diff --git a/src/libsyntax/visit.rs b/src/libsyntax/visit.rs index 8b277b22149..6048256b90b 100644 --- a/src/libsyntax/visit.rs +++ b/src/libsyntax/visit.rs @@ -496,8 +496,7 @@ pub fn visit_expr<E>(ex: @expr, e: E, v: vt<E>) { (v.visit_expr)(b, e, v); } expr_addr_of(_, x) | expr_unary(_, x) | - expr_loop_body(x) | expr_do_body(x) | - expr_assert(x) => (v.visit_expr)(x, e, v), + expr_loop_body(x) | expr_do_body(x) => (v.visit_expr)(x, e, v), expr_lit(_) => (), expr_cast(x, t) => { (v.visit_expr)(x, e, v); |
