aboutsummaryrefslogtreecommitdiff
path: root/src/analyze.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2019-08-13 11:33:01 -0400
committerAndrew Kelley <andrew@ziglang.org>2019-08-13 11:33:01 -0400
commit98183e47436699f6e5eab200061c46eec342806e (patch)
tree753e697edb9bca356a94598ff5cfb9282be5b2fe /src/analyze.cpp
parent3aed7de0c47af40e6ca00c0e969ad30b44af5a7c (diff)
downloadzig-98183e47436699f6e5eab200061c46eec342806e.tar.gz
zig-98183e47436699f6e5eab200061c46eec342806e.zip
flip the order of fields in error unions
to prepare for fixing u128 alignment issues
Diffstat (limited to 'src/analyze.cpp')
-rw-r--r--src/analyze.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/analyze.cpp b/src/analyze.cpp
index 0af1baec35..672e75a5ee 100644
--- a/src/analyze.cpp
+++ b/src/analyze.cpp
@@ -7017,20 +7017,21 @@ static void resolve_llvm_types_error_union(CodeGen *g, ZigType *type) {
uint64_t debug_size_in_bits = 8*LLVMStoreSizeOfType(g->target_data_ref, type->llvm_type);
uint64_t debug_align_in_bits = 8*LLVMABISizeOfType(g->target_data_ref, type->llvm_type);
- ZigLLVMDIType *di_element_types[] = {
- ZigLLVMCreateDebugMemberType(g->dbuilder, ZigLLVMTypeToScope(type->llvm_di_type),
+ ZigLLVMDIType *di_element_types[2];
+ di_element_types[err_union_err_index] = ZigLLVMCreateDebugMemberType(g->dbuilder,
+ ZigLLVMTypeToScope(type->llvm_di_type),
"tag", di_file, line,
tag_debug_size_in_bits,
tag_debug_align_in_bits,
tag_offset_in_bits,
- ZigLLVM_DIFlags_Zero, get_llvm_di_type(g, err_set_type)),
- ZigLLVMCreateDebugMemberType(g->dbuilder, ZigLLVMTypeToScope(type->llvm_di_type),
+ ZigLLVM_DIFlags_Zero, get_llvm_di_type(g, err_set_type));
+ di_element_types[err_union_payload_index] = ZigLLVMCreateDebugMemberType(g->dbuilder,
+ ZigLLVMTypeToScope(type->llvm_di_type),
"value", di_file, line,
value_debug_size_in_bits,
value_debug_align_in_bits,
value_offset_in_bits,
- ZigLLVM_DIFlags_Zero, get_llvm_di_type(g, payload_type)),
- };
+ ZigLLVM_DIFlags_Zero, get_llvm_di_type(g, payload_type));
ZigLLVMDIType *replacement_di_type = ZigLLVMCreateDebugStructType(g->dbuilder,
compile_unit_scope,