| ... | ... | @@ -5190,7 +5190,7 @@ static IrInstGen *ir_resolve_ptr_of_array_to_slice(IrAnalyze *ira, IrInst* sourc |
| 5190 | 5190 | // undef_array->type = array_type; |
| 5191 | 5191 | |
| 5192 | 5192 | // IrInstGen *result = ir_const(ira, source_instr, wanted_type); |
| 5193 | | // init_const_slice(ira->codegen, result->value, undef_array, 0, 0, false); |
| 5193 | // init_const_slice(ira->codegen, result->value, undef_array, 0, 0, false, nullptr); |
| 5194 | 5194 | // result->value->data.x_struct.fields[slice_ptr_index]->data.x_ptr.mut = ConstPtrMutComptimeConst; |
| 5195 | 5195 | // result->value->type = wanted_type; |
| 5196 | 5196 | // return result; |
| ... | ... | @@ -5217,7 +5217,7 @@ static IrInstGen *ir_resolve_ptr_of_array_to_slice(IrAnalyze *ira, IrInst* sourc |
| 5217 | 5217 | undef_array->type = array_type; |
| 5218 | 5218 | |
| 5219 | 5219 | IrInstGen *result = ir_const(ira, source_instr, wanted_type); |
| 5220 | | init_const_slice(ira->codegen, result->value, undef_array, 0, 0, false); |
| 5220 | init_const_slice(ira->codegen, result->value, undef_array, 0, 0, false, nullptr); |
| 5221 | 5221 | result->value->data.x_struct.fields[slice_ptr_index]->data.x_ptr.mut = ConstPtrMutComptimeConst; |
| 5222 | 5222 | result->value->type = wanted_type; |
| 5223 | 5223 | return result; |
| ... | ... | @@ -5230,7 +5230,7 @@ static IrInstGen *ir_resolve_ptr_of_array_to_slice(IrAnalyze *ira, IrInst* sourc |
| 5230 | 5230 | IrInstGen *result = ir_const(ira, source_instr, wanted_type); |
| 5231 | 5231 | init_const_slice(ira->codegen, result->value, array_val, |
| 5232 | 5232 | array_ptr_val->data.x_ptr.data.base_array.elem_index, |
| 5233 | | array_type->data.array.len, wanted_const); |
| 5233 | array_type->data.array.len, wanted_const, nullptr); |
| 5234 | 5234 | result->value->data.x_struct.fields[slice_ptr_index]->data.x_ptr.mut = array_ptr_val->data.x_ptr.mut; |
| 5235 | 5235 | result->value->type = wanted_type; |
| 5236 | 5236 | return result; |
| ... | ... | @@ -5243,7 +5243,7 @@ static IrInstGen *ir_resolve_ptr_of_array_to_slice(IrAnalyze *ira, IrInst* sourc |
| 5243 | 5243 | assert(array_ptr_val->type->id == ZigTypeIdPointer); |
| 5244 | 5244 | |
| 5245 | 5245 | IrInstGen *result = ir_const(ira, source_instr, wanted_type); |
| 5246 | | init_const_slice(ira->codegen, result->value, pointee, 0, array_type->data.array.len, wanted_const); |
| 5246 | init_const_slice(ira->codegen, result->value, pointee, 0, array_type->data.array.len, wanted_const, nullptr); |
| 5247 | 5247 | result->value->data.x_struct.fields[slice_ptr_index]->data.x_ptr.mut = array_ptr_val->data.x_ptr.mut; |
| 5248 | 5248 | result->value->type = wanted_type; |
| 5249 | 5249 | return result; |
| ... | ... | @@ -14449,7 +14449,7 @@ static IrInstGen *ir_analyze_instruction_elem_ptr(IrAnalyze *ira, IrInstSrcElemP |
| 14449 | 14449 | } |
| 14450 | 14450 | |
| 14451 | 14451 | init_const_slice(ira->codegen, array_ptr_val, array_init_val, 0, actual_array_type->data.array.len, |
| 14452 | | false); |
| 14452 | false, nullptr); |
| 14453 | 14453 | array_ptr_val->data.x_struct.fields[slice_ptr_index]->data.x_ptr.mut = ConstPtrMutInfer; |
| 14454 | 14454 | } else { |
| 14455 | 14455 | ir_add_error_node(ira, elem_ptr_instruction->init_array_type_source_node, |
| ... | ... | @@ -17249,7 +17249,7 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa |
| 17249 | 17249 | declaration_array->type = get_array_type(ira->codegen, type_info_declaration_type, declaration_count, nullptr); |
| 17250 | 17250 | declaration_array->data.x_array.special = ConstArraySpecialNone; |
| 17251 | 17251 | declaration_array->data.x_array.data.s_none.elements = ira->codegen->pass1_arena->allocate<ZigValue>(declaration_count); |
| 17252 | | init_const_slice(ira->codegen, out_val, declaration_array, 0, declaration_count, false); |
| 17252 | init_const_slice(ira->codegen, out_val, declaration_array, 0, declaration_count, false, nullptr); |
| 17253 | 17253 | |
| 17254 | 17254 | // Loop through the declarations and generate info. |
| 17255 | 17255 | decl_it = decls_scope->decl_table.entry_iterator(); |
| ... | ... | @@ -17272,7 +17272,7 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa |
| 17272 | 17272 | |
| 17273 | 17273 | ZigValue **inner_fields = alloc_const_vals_ptrs(ira->codegen, 3); |
| 17274 | 17274 | ZigValue *name = create_const_str_lit(ira->codegen, curr_entry->key)->data.x_ptr.data.ref.pointee; |
| 17275 | | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(curr_entry->key), true); |
| 17275 | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(curr_entry->key), true, nullptr); |
| 17276 | 17276 | inner_fields[1]->special = ConstValSpecialStatic; |
| 17277 | 17277 | inner_fields[1]->type = ira->codegen->builtin_types.entry_bool; |
| 17278 | 17278 | inner_fields[1]->data.x_bool = curr_entry->value->visib_mod == VisibModPub; |
| ... | ... | @@ -17368,7 +17368,7 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa |
| 17368 | 17368 | if (fn_node->is_extern && fn_node->lib_name != nullptr && buf_len(fn_node->lib_name) > 0) { |
| 17369 | 17369 | ZigValue *slice_val = ira->codegen->pass1_arena->create<ZigValue>(); |
| 17370 | 17370 | ZigValue *lib_name = create_const_str_lit(ira->codegen, fn_node->lib_name)->data.x_ptr.data.ref.pointee; |
| 17371 | | init_const_slice(ira->codegen, slice_val, lib_name, 0, buf_len(fn_node->lib_name), true); |
| 17371 | init_const_slice(ira->codegen, slice_val, lib_name, 0, buf_len(fn_node->lib_name), true, nullptr); |
| 17372 | 17372 | set_optional_payload(fn_decl_fields[5], slice_val); |
| 17373 | 17373 | } else { |
| 17374 | 17374 | set_optional_payload(fn_decl_fields[5], nullptr); |
| ... | ... | @@ -17388,14 +17388,14 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa |
| 17388 | 17388 | fn_arg_name_array->data.x_array.special = ConstArraySpecialNone; |
| 17389 | 17389 | fn_arg_name_array->data.x_array.data.s_none.elements = ira->codegen->pass1_arena->allocate<ZigValue>(fn_arg_count); |
| 17390 | 17390 | |
| 17391 | | init_const_slice(ira->codegen, fn_decl_fields[7], fn_arg_name_array, 0, fn_arg_count, false); |
| 17391 | init_const_slice(ira->codegen, fn_decl_fields[7], fn_arg_name_array, 0, fn_arg_count, false, nullptr); |
| 17392 | 17392 | |
| 17393 | 17393 | for (size_t fn_arg_index = 0; fn_arg_index < fn_arg_count; fn_arg_index++) { |
| 17394 | 17394 | ZigVar *arg_var = fn_entry->variable_list.at(fn_arg_index); |
| 17395 | 17395 | ZigValue *fn_arg_name_val = &fn_arg_name_array->data.x_array.data.s_none.elements[fn_arg_index]; |
| 17396 | 17396 | ZigValue *arg_name = create_const_str_lit(ira->codegen, |
| 17397 | 17397 | buf_create_from_str(arg_var->name))->data.x_ptr.data.ref.pointee; |
| 17398 | | init_const_slice(ira->codegen, fn_arg_name_val, arg_name, 0, strlen(arg_var->name), true); |
| 17398 | init_const_slice(ira->codegen, fn_arg_name_val, arg_name, 0, strlen(arg_var->name), true, nullptr); |
| 17399 | 17399 | fn_arg_name_val->parent.id = ConstParentIdArray; |
| 17400 | 17400 | fn_arg_name_val->parent.data.p_array.array_val = fn_arg_name_array; |
| 17401 | 17401 | fn_arg_name_val->parent.data.p_array.elem_index = fn_arg_index; |
| ... | ... | @@ -17531,7 +17531,7 @@ static void make_enum_field_val(IrAnalyze *ira, ZigValue *enum_field_val, TypeEn |
| 17531 | 17531 | inner_fields[1]->type = ira->codegen->builtin_types.entry_num_lit_int; |
| 17532 | 17532 | |
| 17533 | 17533 | ZigValue *name = create_const_str_lit(ira->codegen, enum_field->name)->data.x_ptr.data.ref.pointee; |
| 17534 | | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(enum_field->name), true); |
| 17534 | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(enum_field->name), true, nullptr); |
| 17535 | 17535 | |
| 17536 | 17536 | bigint_init_bigint(&inner_fields[1]->data.x_bigint, &enum_field->value); |
| 17537 | 17537 | |
| ... | ... | @@ -17732,7 +17732,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 17732 | 17732 | enum_field_array->data.x_array.special = ConstArraySpecialNone; |
| 17733 | 17733 | enum_field_array->data.x_array.data.s_none.elements = ira->codegen->pass1_arena->allocate<ZigValue>(enum_field_count); |
| 17734 | 17734 | |
| 17735 | | init_const_slice(ira->codegen, fields[2], enum_field_array, 0, enum_field_count, false); |
| 17735 | init_const_slice(ira->codegen, fields[2], enum_field_array, 0, enum_field_count, false, nullptr); |
| 17736 | 17736 | |
| 17737 | 17737 | for (uint32_t enum_field_index = 0; enum_field_index < enum_field_count; enum_field_index++) |
| 17738 | 17738 | { |
| ... | ... | @@ -17785,7 +17785,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 17785 | 17785 | error_array->data.x_array.special = ConstArraySpecialNone; |
| 17786 | 17786 | error_array->data.x_array.data.s_none.elements = ira->codegen->pass1_arena->allocate<ZigValue>(error_count); |
| 17787 | 17787 | |
| 17788 | | init_const_slice(ira->codegen, slice_val, error_array, 0, error_count, false); |
| 17788 | init_const_slice(ira->codegen, slice_val, error_array, 0, error_count, false, nullptr); |
| 17789 | 17789 | for (uint32_t error_index = 0; error_index < error_count; error_index++) { |
| 17790 | 17790 | ErrorTableEntry *error = type_entry->data.error_set.errors[error_index]; |
| 17791 | 17791 | ZigValue *error_val = &error_array->data.x_array.data.s_none.elements[error_index]; |
| ... | ... | @@ -17800,7 +17800,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 17800 | 17800 | name = error->cached_error_name_val; |
| 17801 | 17801 | if (name == nullptr) |
| 17802 | 17802 | name = create_const_str_lit(ira->codegen, &error->name)->data.x_ptr.data.ref.pointee; |
| 17803 | | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(&error->name), true); |
| 17803 | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(&error->name), true, nullptr); |
| 17804 | 17804 | |
| 17805 | 17805 | error_val->data.x_struct.fields = inner_fields; |
| 17806 | 17806 | error_val->parent.id = ConstParentIdArray; |
| ... | ... | @@ -17881,7 +17881,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 17881 | 17881 | union_field_array->data.x_array.special = ConstArraySpecialNone; |
| 17882 | 17882 | union_field_array->data.x_array.data.s_none.elements = ira->codegen->pass1_arena->allocate<ZigValue>(union_field_count); |
| 17883 | 17883 | |
| 17884 | | init_const_slice(ira->codegen, fields[2], union_field_array, 0, union_field_count, false); |
| 17884 | init_const_slice(ira->codegen, fields[2], union_field_array, 0, union_field_count, false, nullptr); |
| 17885 | 17885 | |
| 17886 | 17886 | for (uint32_t union_field_index = 0; union_field_index < union_field_count; union_field_index++) { |
| 17887 | 17887 | TypeUnionField *union_field = &type_entry->data.unionation.fields[union_field_index]; |
| ... | ... | @@ -17902,7 +17902,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 17902 | 17902 | bigint_init_unsigned(&inner_fields[2]->data.x_bigint, union_field->align); |
| 17903 | 17903 | |
| 17904 | 17904 | ZigValue *name = create_const_str_lit(ira->codegen, union_field->name)->data.x_ptr.data.ref.pointee; |
| 17905 | | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(union_field->name), true); |
| 17905 | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(union_field->name), true, nullptr); |
| 17906 | 17906 | |
| 17907 | 17907 | union_field_val->data.x_struct.fields = inner_fields; |
| 17908 | 17908 | union_field_val->parent.id = ConstParentIdArray; |
| ... | ... | @@ -17958,7 +17958,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 17958 | 17958 | struct_field_array->data.x_array.special = ConstArraySpecialNone; |
| 17959 | 17959 | struct_field_array->data.x_array.data.s_none.elements = ira->codegen->pass1_arena->allocate<ZigValue>(struct_field_count); |
| 17960 | 17960 | |
| 17961 | | init_const_slice(ira->codegen, fields[1], struct_field_array, 0, struct_field_count, false); |
| 17961 | init_const_slice(ira->codegen, fields[1], struct_field_array, 0, struct_field_count, false, nullptr); |
| 17962 | 17962 | |
| 17963 | 17963 | for (uint32_t struct_field_index = 0; struct_field_index < struct_field_count; struct_field_index++) { |
| 17964 | 17964 | TypeStructField *struct_field = type_entry->data.structure.fields[struct_field_index]; |
| ... | ... | @@ -17994,7 +17994,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 17994 | 17994 | bigint_init_unsigned(&inner_fields[4]->data.x_bigint, struct_field->align); |
| 17995 | 17995 | |
| 17996 | 17996 | ZigValue *name = create_const_str_lit(ira->codegen, struct_field->name)->data.x_ptr.data.ref.pointee; |
| 17997 | | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(struct_field->name), true); |
| 17997 | init_const_slice(ira->codegen, inner_fields[0], name, 0, buf_len(struct_field->name), true, nullptr); |
| 17998 | 17998 | |
| 17999 | 17999 | struct_field_val->data.x_struct.fields = inner_fields; |
| 18000 | 18000 | struct_field_val->parent.id = ConstParentIdArray; |
| ... | ... | @@ -18074,7 +18074,7 @@ static Error ir_make_type_info_value(IrAnalyze *ira, IrInst* source_instr, ZigTy |
| 18074 | 18074 | fn_arg_array->data.x_array.special = ConstArraySpecialNone; |
| 18075 | 18075 | fn_arg_array->data.x_array.data.s_none.elements = ira->codegen->pass1_arena->allocate<ZigValue>(fn_arg_count); |
| 18076 | 18076 | |
| 18077 | | init_const_slice(ira->codegen, fields[5], fn_arg_array, 0, fn_arg_count, false); |
| 18077 | init_const_slice(ira->codegen, fields[5], fn_arg_array, 0, fn_arg_count, false, nullptr); |
| 18078 | 18078 | |
| 18079 | 18079 | for (size_t fn_arg_index = 0; fn_arg_index < fn_arg_count; fn_arg_index++) { |
| 18080 | 18080 | FnTypeParamInfo *fn_param_info = &type_entry->data.fn.fn_type_id.param_info[fn_arg_index]; |
| ... | ... | @@ -24150,7 +24150,7 @@ static IrInstGen *ir_analyze_instruction_src(IrAnalyze *ira, IrInstSrcSrc *instr |
| 24150 | 24150 | RootStruct *root_struct = import->data.structure.root_struct; |
| 24151 | 24151 | Buf *path = root_struct->path; |
| 24152 | 24152 | ZigValue *file_name = create_const_str_lit(ira->codegen, path)->data.x_ptr.data.ref.pointee; |
| 24153 | | init_const_slice(ira->codegen, fields[0], file_name, 0, buf_len(path), true); |
| 24153 | init_const_slice(ira->codegen, fields[0], file_name, 0, buf_len(path), true, nullptr); |
| 24154 | 24154 | fields[0]->type = u8_slice; |
| 24155 | 24155 | |
| 24156 | 24156 | // fn_name: [:0]const u8 |
| ... | ... | @@ -24158,7 +24158,7 @@ static IrInstGen *ir_analyze_instruction_src(IrAnalyze *ira, IrInstSrcSrc *instr |
| 24158 | 24158 | fields[1]->special = ConstValSpecialStatic; |
| 24159 | 24159 | |
| 24160 | 24160 | ZigValue *fn_name = create_const_str_lit(ira->codegen, &fn_entry->symbol_name)->data.x_ptr.data.ref.pointee; |
| 24161 | | init_const_slice(ira->codegen, fields[1], fn_name, 0, buf_len(&fn_entry->symbol_name), true); |
| 24161 | init_const_slice(ira->codegen, fields[1], fn_name, 0, buf_len(&fn_entry->symbol_name), true, nullptr); |
| 24162 | 24162 | fields[1]->type = u8_slice; |
| 24163 | 24163 | |
| 24164 | 24164 | |