@@ -4450,14 +4450,7 @@ fn trans_expr_out(cx: &@block_ctxt, e: &@ast::expr, output: out_method) ->
4450
4450
ast:: expr_cont. { ret trans_cont ( e. span , cx) ; }
4451
4451
ast:: expr_ret ( ex) { ret trans_ret ( cx, ex) ; }
4452
4452
ast:: expr_put ( ex) { ret trans_put ( cx, ex) ; }
4453
- ast:: expr_be ( ex) {
4454
- // Ideally, the expr_be tag would have a precondition
4455
- // that is_call_expr(ex) -- but we don't support that
4456
- // yet
4457
- // FIXME
4458
- check ast_util:: is_call_expr ( ex) ;
4459
- ret trans_be ( cx, ex) ;
4460
- }
4453
+ ast:: expr_be ( ex) { ret trans_be ( cx, ex) ; }
4461
4454
ast:: expr_anon_obj ( anon_obj) {
4462
4455
ret trans_anon_obj ( cx, e. span , anon_obj, e. id ) ;
4463
4456
}
@@ -4783,10 +4776,10 @@ fn trans_ret(cx: &@block_ctxt, e: &option::t<@ast::expr>) -> result {
4783
4776
4784
4777
fn build_return ( bcx : & @block_ctxt ) { bld:: Br ( bcx, bcx_fcx ( bcx) . llreturn ) ; }
4785
4778
4786
- // fn trans_be(cx: &@block_ctxt, e: &@ast::expr) -> result {
4787
- fn trans_be( cx : & @block_ctxt , e : & @ast:: expr )
4788
- : ast_util:: is_call_expr ( e ) -> result {
4779
+ fn trans_be ( cx : & @block_ctxt , e : & @ast:: expr ) -> result {
4780
+ // FIXME: This should be a typestate precondition
4789
4781
4782
+ assert ( ast_util:: is_call_expr ( e) ) ;
4790
4783
// FIXME: Turn this into a real tail call once
4791
4784
// calling convention issues are settled
4792
4785
0 commit comments