diff options
| author | ouz-a <oguz.agcayazi@gmail.com> | 2022-06-13 16:37:41 +0300 |
|---|---|---|
| committer | ouz-a <oguz.agcayazi@gmail.com> | 2022-07-12 14:26:41 +0300 |
| commit | 9efccc97e2a495660fe2915f3b333293f01ed2a9 (patch) | |
| tree | 1efdbc6152b474b1d795cfe586886d41f0c3c123 | |
| parent | 743cee6ca9c406fb489ffcff34bc068ce3d895f3 (diff) | |
| download | rust-9efccc97e2a495660fe2915f3b333293f01ed2a9.tar.gz rust-9efccc97e2a495660fe2915f3b333293f01ed2a9.zip | |
add new rval, pull deref early
| -rw-r--r-- | src/base.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/base.rs b/src/base.rs index f71d749df62..63cd4d6de4c 100644 --- a/src/base.rs +++ b/src/base.rs @@ -503,6 +503,11 @@ fn codegen_stmt<'tcx>( let val = codegen_operand(fx, operand); lval.write_cvalue(fx, val); } + Rvalue::CopyForDeref(place) => { + let cplace = codegen_place(fx, place); + let val = cplace.to_cvalue(fx); + lval.write_cvalue(fx, val) + } Rvalue::Ref(_, _, place) | Rvalue::AddressOf(_, place) => { let place = codegen_place(fx, place); let ref_ = place.place_ref(fx, lval.layout()); |
