diff options
Diffstat (limited to 'src/hir/serialise.cpp')
-rw-r--r-- | src/hir/serialise.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/hir/serialise.cpp b/src/hir/serialise.cpp index d372585c..c58780a0 100644 --- a/src/hir/serialise.cpp +++ b/src/hir/serialise.cpp @@ -177,7 +177,6 @@ namespace { serialise_genericpath(e.trait); m_out.write_string(e.item); serialise_pathparams(e.params); - serialise_pathparams(e.impl_params); ), (UfcsUnknown, DEBUG("-- UfcsUnknown - " << path); @@ -565,6 +564,9 @@ namespace { (DstMeta, serialise(e.val); ), + (DstPtr, + serialise(e.val); + ), (MakeDst, serialise(e.ptr_val); serialise(e.meta_val); @@ -685,6 +687,8 @@ namespace { ) } + void serialise(unsigned int v) { m_out.write_count(v); }; + // - Value items void serialise(const ::HIR::Function& fcn) { @@ -813,10 +817,12 @@ namespace { m_out.write_bool( item.m_is_marker ); serialise_strmap( item.m_types ); serialise_strmap( item.m_values ); + serialise_strmap( item.m_type_indexes ); } void serialise(const ::HIR::TraitValueItem& tvi) { m_out.write_tag( tvi.tag() ); + m_out.write_count( tvi.vtable_ofs ); TU_MATCHA( (tvi), (e), (Constant, DEBUG("Constant"); |