File tree Expand file tree Collapse file tree 2 files changed +13
-3
lines changed Expand file tree Collapse file tree 2 files changed +13
-3
lines changed Original file line number Diff line number Diff line change 1
1
---
2
- refs/heads/master: 66e5dfbde6ce7a84158d39f4b19acc420b1f7c5a
2
+ refs/heads/master: bcad52451cb63118ee9b67684b8b70e3cb5f4aff
Original file line number Diff line number Diff line change @@ -5075,9 +5075,19 @@ fn trans_expr(@block_ctxt cx, @ast.expr e) -> result {
5075
5075
auto t = node_ann_type( cx. fcx. lcx. ccx, ann) ;
5076
5076
auto lhs_res = trans_lval( cx, dst) ;
5077
5077
check ( lhs_res. is_mem) ;
5078
- auto lhs_val = load_if_immediate( lhs_res. res. bcx,
5079
- lhs_res. res. val, t) ;
5080
5078
auto rhs_res = trans_expr( lhs_res. res. bcx, src) ;
5079
+ if ( ty. type_is_sequence( cx. fcx. lcx. ccx. tcx, t) ) {
5080
+ alt ( op) {
5081
+ case ( ast. add) {
5082
+ ret trans_vec_append( rhs_res. bcx, t,
5083
+ lhs_res. res. val,
5084
+ rhs_res. val) ;
5085
+ }
5086
+ case ( _) { }
5087
+ }
5088
+ }
5089
+ auto lhs_val = load_if_immediate( rhs_res. bcx,
5090
+ lhs_res. res. val, t) ;
5081
5091
auto v = trans_eager_binop( rhs_res. bcx, op, t,
5082
5092
lhs_val, rhs_res. val) ;
5083
5093
// FIXME: calculate copy init-ness in typestate.
You can’t perform that action at this time.
0 commit comments