From 2772b2e5c7f85e230bcae13c49eb1386afc6cd0e Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Mon, 6 Aug 2012 17:14:32 -0700 Subject: syntax: Make match arm parsing more restrictive again Require comma separators for all expression types except the plain block --- src/rustc/middle/check_const.rs | 2 +- src/rustc/middle/liveness.rs | 4 ++-- src/rustc/middle/pat_util.rs | 2 +- src/rustc/middle/resolve3.rs | 2 +- src/rustc/middle/trans/base.rs | 2 +- src/rustc/middle/trans/debuginfo.rs | 4 ++-- src/rustc/middle/trans/foreign.rs | 2 +- src/rustc/middle/ty.rs | 14 +++++++------- src/rustc/middle/typeck/check.rs | 6 +++--- src/rustc/middle/typeck/check/regionmanip.rs | 2 +- src/rustc/middle/typeck/infer.rs | 4 ++-- 11 files changed, 22 insertions(+), 22 deletions(-) (limited to 'src/rustc') diff --git a/src/rustc/middle/check_const.rs b/src/rustc/middle/check_const.rs index 36b0908f435..0cddd359b55 100644 --- a/src/rustc/middle/check_const.rs +++ b/src/rustc/middle/check_const.rs @@ -46,7 +46,7 @@ fn check_pat(p: @pat, &&_is_const: bool, v: visit::vt) { } match p.node { // Let through plain ~-string literals here - pat_lit(a) => if !is_str(a) { v.visit_expr(a, true, v); } + pat_lit(a) => if !is_str(a) { v.visit_expr(a, true, v); }, pat_range(a, b) => { if !is_str(a) { v.visit_expr(a, true, v); } if !is_str(b) { v.visit_expr(b, true, v); } diff --git a/src/rustc/middle/liveness.rs b/src/rustc/middle/liveness.rs index f1ba8375276..0daec1693f1 100644 --- a/src/rustc/middle/liveness.rs +++ b/src/rustc/middle/liveness.rs @@ -1190,7 +1190,7 @@ class liveness { expr_field(e, nm, _) => match self.as_self_field(e, nm) { some(_) => succ, none => self.propagate_through_expr(e, succ) - } + }, _ => self.propagate_through_expr(expr, succ) } } @@ -1208,7 +1208,7 @@ class liveness { ln } none => succ - } + }, // We do not track other lvalues, so just propagate through // to their subcomponents. Also, it may happen that diff --git a/src/rustc/middle/pat_util.rs b/src/rustc/middle/pat_util.rs index c147973e69e..0b625a63d5a 100644 --- a/src/rustc/middle/pat_util.rs +++ b/src/rustc/middle/pat_util.rs @@ -27,7 +27,7 @@ fn pat_is_variant(dm: resolve3::DefMap, pat: @pat) -> bool { pat_ident(_, _, none) => match dm.find(pat.id) { some(def_variant(_, _)) => true, _ => false - } + }, _ => false } } diff --git a/src/rustc/middle/resolve3.rs b/src/rustc/middle/resolve3.rs index cf8d1f348c9..15ebe1c14d0 100644 --- a/src/rustc/middle/resolve3.rs +++ b/src/rustc/middle/resolve3.rs @@ -582,7 +582,7 @@ class NameBindings { none => return none, some(def_id) => return some(def_mod(def_id)) } - } + }, ImplNS => { // Danger: Be careful what you use this for! def_ty is not // necessarily the right def. diff --git a/src/rustc/middle/trans/base.rs b/src/rustc/middle/trans/base.rs index 16c08641e17..2993d23d180 100644 --- a/src/rustc/middle/trans/base.rs +++ b/src/rustc/middle/trans/base.rs @@ -2851,7 +2851,7 @@ fn trans_arg_expr(cx: block, arg: ty::arg, lldestty: TypeRef, e: @ast::expr, let bcx = trans_loop_body(cx, e, ret_flag, save_in(scratch)); {bcx: bcx, val: scratch, kind: lv_temporary} } - } + }, none => { trans_temp_lval(cx, e) } diff --git a/src/rustc/middle/trans/debuginfo.rs b/src/rustc/middle/trans/debuginfo.rs index 1a207a5313c..325ce55d28f 100644 --- a/src/rustc/middle/trans/debuginfo.rs +++ b/src/rustc/middle/trans/debuginfo.rs @@ -300,14 +300,14 @@ fn create_basic_type(cx: @crate_ctxt, t: ty::t, ty: ast::prim_ty, span: span) ast::ty_i16 => (~"i16", DW_ATE_signed), ast::ty_i32 => (~"i32", DW_ATE_signed), ast::ty_i64 => (~"i64", DW_ATE_signed) - } + }, ast::ty_uint(m) => match m { ast::ty_u => (~"uint", DW_ATE_unsigned), ast::ty_u8 => (~"u8", DW_ATE_unsigned_char), ast::ty_u16 => (~"u16", DW_ATE_unsigned), ast::ty_u32 => (~"u32", DW_ATE_unsigned), ast::ty_u64 => (~"u64", DW_ATE_unsigned) - } + }, ast::ty_float(m) => match m { ast::ty_f => (~"float", DW_ATE_float), ast::ty_f32 => (~"f32", DW_ATE_float), diff --git a/src/rustc/middle/trans/foreign.rs b/src/rustc/middle/trans/foreign.rs index 27f7c8c0183..3eac4a7e663 100644 --- a/src/rustc/middle/trans/foreign.rs +++ b/src/rustc/middle/trans/foreign.rs @@ -1165,7 +1165,7 @@ fn abi_of_foreign_fn(ccx: @crate_ctxt, i: @ast::foreign_item) match attr::first_attr_value_str_by_name(i.attrs, ~"abi") { none => match check ccx.tcx.items.get(i.id) { ast_map::node_foreign_item(_, abi, _) => abi - } + }, some(_) => match attr::foreign_abi(i.attrs) { either::right(abi) => abi, either::left(msg) => ccx.sess.span_fatal(i.span, msg) diff --git a/src/rustc/middle/ty.rs b/src/rustc/middle/ty.rs index 5c22e155828..1f79774256d 100644 --- a/src/rustc/middle/ty.rs +++ b/src/rustc/middle/ty.rs @@ -612,7 +612,7 @@ fn mk_t(cx: ctxt, st: sty) -> t { mk_t_with_id(cx, st, none) } fn mk_t_with_id(cx: ctxt, st: sty, o_def_id: option) -> t { let key = {struct: st, o_def_id: o_def_id}; match cx.interner.find(key) { - some(t) => unsafe { return unsafe::reinterpret_cast(t); } + some(t) => unsafe { return unsafe::reinterpret_cast(t); }, _ => () } let mut flags = 0u; @@ -655,8 +655,8 @@ fn mk_t_with_id(cx: ctxt, st: sty, o_def_id: option) -> t { flags |= rflags(r); flags |= get(m.ty).flags; } - ty_rec(flds) => for flds.each |f| { flags |= get(f.mt.ty).flags; } - ty_tup(ts) => for ts.each |tt| { flags |= get(tt).flags; } + ty_rec(flds) => for flds.each |f| { flags |= get(f.mt.ty).flags; }, + ty_tup(ts) => for ts.each |tt| { flags |= get(tt).flags; }, ty_fn(f) => { for f.inputs.each |a| { flags |= get(a.ty).flags; } flags |= get(f.output).flags; @@ -2189,19 +2189,19 @@ pure fn hash_type_structure(st: sty) -> uint { ast::ty_i16 => 5u, ast::ty_i32 => 6u, ast::ty_i64 => 7u - } + }, ty_uint(t) => match t { ast::ty_u => 8u, ast::ty_u8 => 9u, ast::ty_u16 => 10u, ast::ty_u32 => 11u, ast::ty_u64 => 12u - } + }, ty_float(t) => match t { ast::ty_f => 13u, ast::ty_f32 => 14u, ast::ty_f64 => 15u - } + }, ty_estr(_) => 16u, ty_enum(did, substs) => { let mut h = hash_def(18u, did); @@ -2473,7 +2473,7 @@ fn canon(tbl: hashmap>, if cm1 != m1 { tbl.insert(id, cm1); } cm1 } - } + }, _ => m0 } } diff --git a/src/rustc/middle/typeck/check.rs b/src/rustc/middle/typeck/check.rs index 2c6be53601c..1012542c6ad 100644 --- a/src/rustc/middle/typeck/check.rs +++ b/src/rustc/middle/typeck/check.rs @@ -1319,7 +1319,7 @@ fn check_expr_with_unifier(fcx: @fn_ctxt, ast::box(_) | ast::uniq(_) => match sty { ty::ty_box(mt) | ty::ty_uniq(mt) => some(mt.ty), _ => none - } + }, ast::not | ast::neg => expected, ast::deref => none } @@ -1430,7 +1430,7 @@ fn check_expr_with_unifier(fcx: @fn_ctxt, expr.span, ~"`return;` in function returning non-nil"); } - } + }, some(e) => { check_expr_with(fcx, e, ret_ty); } } fcx.write_bot(id); @@ -1933,7 +1933,7 @@ fn check_stmt(fcx: @fn_ctxt, stmt: @ast::stmt) -> bool { match decl.node { ast::decl_local(ls) => for ls.each |l| { bot |= check_decl_local(fcx, l); - } + }, ast::decl_item(_) => {/* ignore for now */ } } } diff --git a/src/rustc/middle/typeck/check/regionmanip.rs b/src/rustc/middle/typeck/check/regionmanip.rs index b9073f97399..2e3003ed687 100644 --- a/src/rustc/middle/typeck/check/regionmanip.rs +++ b/src/rustc/middle/typeck/check/regionmanip.rs @@ -48,7 +48,7 @@ fn replace_bound_regions_in_fn_ty( some(s) => match check t_self { some(t) => some({self_ty: t, node_id: s.node_id}) // this 'none' case shouldn't happen - } + }, none => none }; diff --git a/src/rustc/middle/typeck/infer.rs b/src/rustc/middle/typeck/infer.rs index 42291ea30c7..b4c28b19354 100644 --- a/src/rustc/middle/typeck/infer.rs +++ b/src/rustc/middle/typeck/infer.rs @@ -258,14 +258,14 @@ fn convert_integral_ty_to_int_ty_set(tcx: ty::ctxt, t: ty::t) ast::ty_i => int_ty_set(INT_TY_SET_i), ast::ty_char => tcx.sess.bug( ~"char type passed to convert_integral_ty_to_int_ty_set()") - } + }, ty_uint(uint_ty) => match uint_ty { ast::ty_u8 => int_ty_set(INT_TY_SET_u8), ast::ty_u16 => int_ty_set(INT_TY_SET_u16), ast::ty_u32 => int_ty_set(INT_TY_SET_u32), ast::ty_u64 => int_ty_set(INT_TY_SET_u64), ast::ty_u => int_ty_set(INT_TY_SET_u) - } + }, _ => tcx.sess.bug(~"non-integral type passed to \ convert_integral_ty_to_int_ty_set()") } -- cgit 1.4.1-3-g733a5