diff options
author | John Hodge <tpg@mutabah.net> | 2016-12-04 19:34:41 +0800 |
---|---|---|
committer | John Hodge <tpg@mutabah.net> | 2016-12-04 19:34:41 +0800 |
commit | b9c9dce47c09a62f7955dc8b1e51533b705d1cd0 (patch) | |
tree | ea36043d9b044fc8713ac947679be5ad03344d84 /src/trans/codegen_c.cpp | |
parent | dbaca4f89bc40fba555c4cbba8b5ad21627b72a7 (diff) | |
download | mrust-b9c9dce47c09a62f7955dc8b1e51533b705d1cd0.tar.gz |
Trans C - DstMeta and DstPtr can only be called on DST pointers
Diffstat (limited to 'src/trans/codegen_c.cpp')
-rw-r--r-- | src/trans/codegen_c.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/trans/codegen_c.cpp b/src/trans/codegen_c.cpp index d58c56b5..15f80a65 100644 --- a/src/trans/codegen_c.cpp +++ b/src/trans/codegen_c.cpp @@ -490,13 +490,15 @@ namespace { (DstMeta, emit_lvalue(e.dst); m_of << " = "; - emit_lvalue(ve.val); + assert( ve.val.is_Deref() ); + emit_lvalue(*ve.val.as_Deref().val); m_of << ".META"; ), (DstPtr, emit_lvalue(e.dst); m_of << " = "; - emit_lvalue(ve.val); + assert( ve.val.is_Deref() ); + emit_lvalue(*ve.val.as_Deref().val); m_of << ".PTR"; ), (MakeDst, |