diff --git a/src/dwarf/dwarf_parse_2.c b/src/dwarf/dwarf_parse_2.c index 3961ccc7..d204e48d 100644 --- a/src/dwarf/dwarf_parse_2.c +++ b/src/dwarf/dwarf_parse_2.c @@ -329,7 +329,7 @@ dw2_read_form_val(DW2_ParseCtx *ctx, String8 data, U64 off, DW_FormKind form_kin //- rjf: sleb128 reads case DW_Form_SData: { - off += str8_deserial_read_sleb128(data, off, &val.u128.u64[0]); + off += str8_deserial_read_sleb128(data, off, (S64 *)(&val.u128.u64[0])); }break; //- rjf: fixed-size uint reads / skips diff --git a/src/rdi/rdi_local.c b/src/rdi/rdi_local.c index 948c1c75..7624434f 100644 --- a/src/rdi/rdi_local.c +++ b/src/rdi/rdi_local.c @@ -14,6 +14,7 @@ arch_from_rdi_arch(RDI_Arch arch) switch((RDI_ArchEnum)arch) { case RDI_Arch_NULL:{}break; + case RDI_Arch_X86:{result = Arch_x86;}break; case RDI_Arch_X64:{result = Arch_x64;}break; } return result; diff --git a/src/rdi_from_dwarf/rdi_from_dwarf_2.c b/src/rdi_from_dwarf/rdi_from_dwarf_2.c index 750aa48d..70a38955 100644 --- a/src/rdi_from_dwarf/rdi_from_dwarf_2.c +++ b/src/rdi_from_dwarf/rdi_from_dwarf_2.c @@ -1221,7 +1221,7 @@ d2r2_convert(Arena *arena, D2R2_ConvertParams *params) for(;!gathered;) { // rjf: read existing slot head pointer *before* we lookup / insert - U64 slot_head_val = ins_atomic_u64_eval(&unique_type_tag_slots[slot_idx]); + U64 slot_head_val = (U64)ins_atomic_u64_eval(&unique_type_tag_slots[slot_idx]); // rjf: determine if this hash has been gathered for(UniqueTypeTagNode *n = (UniqueTypeTagNode *)slot_head_val; n != 0; n = n->next)