From 536ca53d186bf21caa0299d95038231a17e92161 Mon Sep 17 00:00:00 2001 From: Ryan Fleury Date: Mon, 8 Jun 2026 11:26:17 -0700 Subject: [PATCH] rdi_from_pdb: sketch out paths for LF_ALIAS --- src/rdi_from_pdb/rdi_from_pdb.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/rdi_from_pdb/rdi_from_pdb.c b/src/rdi_from_pdb/rdi_from_pdb.c index f3632ffa..69a3aa5b 100644 --- a/src/rdi_from_pdb/rdi_from_pdb.c +++ b/src/rdi_from_pdb/rdi_from_pdb.c @@ -2110,6 +2110,14 @@ p2r_convert(Arena *arena, P2R_ConvertParams *params) U8 *name_ptr = (U8 *)(lf_enum+1); name = str8_cstring_capped(name_ptr, itype_leaf_opl); }break; + + //- rjf: ALIAS + case CV_LeafKind_ALIAS: + { + CV_LeafAlias *lf = (CV_LeafAlias *)itype_leaf_first; + U8 *name_ptr = (U8 *)(lf+1); + name = str8_cstring_capped(name_ptr, itype_leaf_opl); + }break; } } @@ -2708,6 +2716,25 @@ p2r_convert(Arena *arena, P2R_ConvertParams *params) } }break; + //- rjf: alias + case CV_LeafKind_ALIAS: + { + // rjf: unpack leaf + CV_LeafAlias *lf = (CV_LeafAlias *)itype_leaf_first; + U8 *name_ptr = (U8 *)(lf+1); + String8 name = str8_cstring_capped(name_ptr, itype_leaf_opl); + + // rjf: fill type + dst_type = rdim_type_chunk_list_push(arena, all_types__pre_typedefs_ptr, (U64)itype_opl); + dst_type->kind = RDI_TypeKind_Alias; + dst_type->name = name; + dst_type->direct_type = p2r_type_ptr_from_itype(lf->itype); + if(dst_type->direct_type != 0) + { + dst_type->byte_size = dst_type->direct_type->byte_size; + } + }break; + //- rjf: UNION case CV_LeafKind_UNION: {