                                   Some(v) => v.clone(),
                                   None => Operand::Consume(base.clone().unwrap().field(n)),
                               })
                               .collect();

                block.and(Rvalue::Aggregate(AggregateKind::Adt(adt_def, variant_index, substs),
                                            fields))
            }
            ExprKind::Literal { .. } |
            ExprKind::Block { .. } |
            ExprKind::Match { .. } |