summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/trans/codegen_c.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/trans/codegen_c.cpp b/src/trans/codegen_c.cpp
index 829aa7f7..5c180fe7 100644
--- a/src/trans/codegen_c.cpp
+++ b/src/trans/codegen_c.cpp
@@ -2774,13 +2774,16 @@ namespace {
{
// HACK: Don't emit assignment of PhantomData
::HIR::TypeRef tmp;
- const auto& ty = mir_res.get_param_type(tmp, ve.vals[j]);
- if( ve.vals[j].is_LValue() && m_resolve.is_type_phantom_data(ty) )
- continue ;
-
- if( this->type_is_bad_zst(ty) )
+ if( ve.vals[j].is_LValue() )
{
- continue ;
+ const auto& ty = mir_res.get_param_type(tmp, ve.vals[j]);
+ if( ve.vals[j].is_LValue() && m_resolve.is_type_phantom_data(ty) )
+ continue ;
+
+ if( this->type_is_bad_zst(ty) )
+ {
+ continue ;
+ }
}
if(has_emitted) {