diff options
Diffstat (limited to 'src/hir_conv/markings.cpp')
-rw-r--r-- | src/hir_conv/markings.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/hir_conv/markings.cpp b/src/hir_conv/markings.cpp index 7f2189dd..ca5f7ca7 100644 --- a/src/hir_conv/markings.cpp +++ b/src/hir_conv/markings.cpp @@ -61,8 +61,21 @@ public: if( str.m_params.m_types.at(te.binding).m_is_sized == false ) { str.m_markings.unsized_field = se.size() - 1; + str.m_markings.dst_type = ::HIR::TraitMarkings::DstType::Possible; } } + else if( last_field.m_data.is_Slice() ) + { + str.m_markings.dst_type = ::HIR::TraitMarkings::DstType::Slice; + } + else if( last_field.m_data.is_TraitObject() ) + { + str.m_markings.dst_type = ::HIR::TraitMarkings::DstType::TraitObject; + } + else + { + str.m_markings.dst_type = ::HIR::TraitMarkings::DstType::None; + } } ) ) |