aboutsummaryrefslogtreecommitdiff
path: root/src/comp
diff options
context:
space:
mode:
Diffstat (limited to 'src/comp')
-rw-r--r--src/comp/middle/trans.rs3
-rw-r--r--src/comp/middle/typeck.rs6
2 files changed, 9 insertions, 0 deletions
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index aede3110..bc43185a 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -1789,6 +1789,7 @@ fn variant_types(@crate_ctxt cx, &ast.variant v) -> vec[@ty.t] {
}
}
case (ty.ty_tag(_, _)) { /* nothing */ }
+ case (_) { fail; }
}
ret tys;
}
@@ -2001,6 +2002,7 @@ fn iter_structural_ty_full(@block_ctxt cx,
j += 1;
}
}
+ case (_) { fail; }
}
variant_cx.build.Br(next_cx.llbb);
@@ -2167,6 +2169,7 @@ fn iter_sequence(@block_ctxt cx,
auto et = plain_ty(ty.ty_machine(common.ty_u8));
ret iter_sequence_body(cx, v, et, f, true);
}
+ case (_) { fail; }
}
cx.fcx.ccx.sess.bug("bad type in trans.iter_sequence");
fail;
diff --git a/src/comp/middle/typeck.rs b/src/comp/middle/typeck.rs
index 75d6a8ff..c849483e 100644
--- a/src/comp/middle/typeck.rs
+++ b/src/comp/middle/typeck.rs
@@ -1861,6 +1861,9 @@ fn check_expr(&@fn_ctxt fcx, @ast.expr expr) -> @ast.expr {
case (ty.ty_chan(?it)) {
item_t = it;
}
+ case (_) {
+ fail;
+ }
}
auto rhs_1 = demand_expr(fcx, item_t, rhs_0);
@@ -1881,6 +1884,9 @@ fn check_expr(&@fn_ctxt fcx, @ast.expr expr) -> @ast.expr {
case (ty.ty_port(?it)) {
item_t = it;
}
+ case (_) {
+ fail;
+ }
}
auto lhs_1 = demand_expr(fcx, item_t, lhs_0);