@@ -16799,21 +16799,15 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
16799
16799
// type: ?type,
16800
16800
param_ty_val,
16801
16801
};
16802
- param_val.* = try pt.intern(.{ .aggregate = .{
16803
- .ty = param_info_ty.toIntern(),
16804
- .storage = .{ .elems = ¶m_fields },
16805
- } });
16802
+ param_val.* = (try pt.aggregateValue(param_info_ty, ¶m_fields)).toIntern();
16806
16803
}
16807
16804
16808
16805
const args_val = v: {
16809
16806
const new_decl_ty = try pt.arrayType(.{
16810
16807
.len = param_vals.len,
16811
16808
.child = param_info_ty.toIntern(),
16812
16809
});
16813
- const new_decl_val = try pt.intern(.{ .aggregate = .{
16814
- .ty = new_decl_ty.toIntern(),
16815
- .storage = .{ .elems = param_vals },
16816
- } });
16810
+ const new_decl_val = (try pt.aggregateValue(new_decl_ty, param_vals)).toIntern();
16817
16811
const slice_ty = (try pt.ptrTypeSema(.{
16818
16812
.child = param_info_ty.toIntern(),
16819
16813
.flags = .{
@@ -16871,10 +16865,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
16871
16865
return Air.internedToRef((try pt.internUnion(.{
16872
16866
.ty = type_info_ty.toIntern(),
16873
16867
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.@"fn"))).toIntern(),
16874
- .val = try pt.intern(.{ .aggregate = .{
16875
- .ty = fn_info_ty.toIntern(),
16876
- .storage = .{ .elems = &field_values },
16877
- } }),
16868
+ .val = (try pt.aggregateValue(fn_info_ty, &field_values)).toIntern(),
16878
16869
})));
16879
16870
},
16880
16871
.int => {
@@ -16890,10 +16881,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
16890
16881
return Air.internedToRef((try pt.internUnion(.{
16891
16882
.ty = type_info_ty.toIntern(),
16892
16883
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.int))).toIntern(),
16893
- .val = try pt.intern(.{ .aggregate = .{
16894
- .ty = int_info_ty.toIntern(),
16895
- .storage = .{ .elems = &field_values },
16896
- } }),
16884
+ .val = (try pt.aggregateValue(int_info_ty, &field_values)).toIntern(),
16897
16885
})));
16898
16886
},
16899
16887
.float => {
@@ -16906,10 +16894,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
16906
16894
return Air.internedToRef((try pt.internUnion(.{
16907
16895
.ty = type_info_ty.toIntern(),
16908
16896
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.float))).toIntern(),
16909
- .val = try pt.intern(.{ .aggregate = .{
16910
- .ty = float_info_ty.toIntern(),
16911
- .storage = .{ .elems = &field_vals },
16912
- } }),
16897
+ .val = (try pt.aggregateValue(float_info_ty, &field_vals)).toIntern(),
16913
16898
})));
16914
16899
},
16915
16900
.pointer => {
@@ -16947,10 +16932,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
16947
16932
return Air.internedToRef((try pt.internUnion(.{
16948
16933
.ty = type_info_ty.toIntern(),
16949
16934
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.pointer))).toIntern(),
16950
- .val = try pt.intern(.{ .aggregate = .{
16951
- .ty = pointer_ty.toIntern(),
16952
- .storage = .{ .elems = &field_values },
16953
- } }),
16935
+ .val = (try pt.aggregateValue(pointer_ty, &field_values)).toIntern(),
16954
16936
})));
16955
16937
},
16956
16938
.array => {
@@ -16968,10 +16950,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
16968
16950
return Air.internedToRef((try pt.internUnion(.{
16969
16951
.ty = type_info_ty.toIntern(),
16970
16952
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.array))).toIntern(),
16971
- .val = try pt.intern(.{ .aggregate = .{
16972
- .ty = array_field_ty.toIntern(),
16973
- .storage = .{ .elems = &field_values },
16974
- } }),
16953
+ .val = (try pt.aggregateValue(array_field_ty, &field_values)).toIntern(),
16975
16954
})));
16976
16955
},
16977
16956
.vector => {
@@ -16987,10 +16966,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
16987
16966
return Air.internedToRef((try pt.internUnion(.{
16988
16967
.ty = type_info_ty.toIntern(),
16989
16968
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.vector))).toIntern(),
16990
- .val = try pt.intern(.{ .aggregate = .{
16991
- .ty = vector_field_ty.toIntern(),
16992
- .storage = .{ .elems = &field_values },
16993
- } }),
16969
+ .val = (try pt.aggregateValue(vector_field_ty, &field_values)).toIntern(),
16994
16970
})));
16995
16971
},
16996
16972
.optional => {
@@ -17003,10 +16979,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17003
16979
return Air.internedToRef((try pt.internUnion(.{
17004
16980
.ty = type_info_ty.toIntern(),
17005
16981
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.optional))).toIntern(),
17006
- .val = try pt.intern(.{ .aggregate = .{
17007
- .ty = optional_field_ty.toIntern(),
17008
- .storage = .{ .elems = &field_values },
17009
- } }),
16982
+ .val = (try pt.aggregateValue(optional_field_ty, &field_values)).toIntern(),
17010
16983
})));
17011
16984
},
17012
16985
.error_set => {
@@ -17052,10 +17025,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17052
17025
// name: [:0]const u8,
17053
17026
error_name_val,
17054
17027
};
17055
- field_val.* = try pt.intern(.{ .aggregate = .{
17056
- .ty = error_field_ty.toIntern(),
17057
- .storage = .{ .elems = &error_field_fields },
17058
- } });
17028
+ field_val.* = (try pt.aggregateValue(error_field_ty, &error_field_fields)).toIntern();
17059
17029
}
17060
17030
17061
17031
break :blk vals;
@@ -17076,10 +17046,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17076
17046
.len = vals.len,
17077
17047
.child = error_field_ty.toIntern(),
17078
17048
});
17079
- const new_decl_val = try pt.intern(.{ .aggregate = .{
17080
- .ty = array_errors_ty.toIntern(),
17081
- .storage = .{ .elems = vals },
17082
- } });
17049
+ const new_decl_val = (try pt.aggregateValue(array_errors_ty, vals)).toIntern();
17083
17050
const manyptr_errors_ty = slice_errors_ty.slicePtrFieldType(zcu).toIntern();
17084
17051
break :v try pt.intern(.{ .slice = .{
17085
17052
.ty = slice_errors_ty.toIntern(),
@@ -17118,10 +17085,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17118
17085
return Air.internedToRef((try pt.internUnion(.{
17119
17086
.ty = type_info_ty.toIntern(),
17120
17087
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.error_union))).toIntern(),
17121
- .val = try pt.intern(.{ .aggregate = .{
17122
- .ty = error_union_field_ty.toIntern(),
17123
- .storage = .{ .elems = &field_values },
17124
- } }),
17088
+ .val = (try pt.aggregateValue(error_union_field_ty, &field_values)).toIntern(),
17125
17089
})));
17126
17090
},
17127
17091
.@"enum" => {
@@ -17175,21 +17139,15 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17175
17139
// value: comptime_int,
17176
17140
value_val,
17177
17141
};
17178
- field_val.* = try pt.intern(.{ .aggregate = .{
17179
- .ty = enum_field_ty.toIntern(),
17180
- .storage = .{ .elems = &enum_field_fields },
17181
- } });
17142
+ field_val.* = (try pt.aggregateValue(enum_field_ty, &enum_field_fields)).toIntern();
17182
17143
}
17183
17144
17184
17145
const fields_val = v: {
17185
17146
const fields_array_ty = try pt.arrayType(.{
17186
17147
.len = enum_field_vals.len,
17187
17148
.child = enum_field_ty.toIntern(),
17188
17149
});
17189
- const new_decl_val = try pt.intern(.{ .aggregate = .{
17190
- .ty = fields_array_ty.toIntern(),
17191
- .storage = .{ .elems = enum_field_vals },
17192
- } });
17150
+ const new_decl_val = (try pt.aggregateValue(fields_array_ty, enum_field_vals)).toIntern();
17193
17151
const slice_ty = (try pt.ptrTypeSema(.{
17194
17152
.child = enum_field_ty.toIntern(),
17195
17153
.flags = .{
@@ -17229,10 +17187,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17229
17187
return Air.internedToRef((try pt.internUnion(.{
17230
17188
.ty = type_info_ty.toIntern(),
17231
17189
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.@"enum"))).toIntern(),
17232
- .val = try pt.intern(.{ .aggregate = .{
17233
- .ty = type_enum_ty.toIntern(),
17234
- .storage = .{ .elems = &field_values },
17235
- } }),
17190
+ .val = (try pt.aggregateValue(type_enum_ty, &field_values)).toIntern(),
17236
17191
})));
17237
17192
},
17238
17193
.@"union" => {
@@ -17288,21 +17243,15 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17288
17243
// alignment: comptime_int,
17289
17244
(try pt.intValue(.comptime_int, alignment.toByteUnits() orelse 0)).toIntern(),
17290
17245
};
17291
- field_val.* = try pt.intern(.{ .aggregate = .{
17292
- .ty = union_field_ty.toIntern(),
17293
- .storage = .{ .elems = &union_field_fields },
17294
- } });
17246
+ field_val.* = (try pt.aggregateValue(union_field_ty, &union_field_fields)).toIntern();
17295
17247
}
17296
17248
17297
17249
const fields_val = v: {
17298
17250
const array_fields_ty = try pt.arrayType(.{
17299
17251
.len = union_field_vals.len,
17300
17252
.child = union_field_ty.toIntern(),
17301
17253
});
17302
- const new_decl_val = try pt.intern(.{ .aggregate = .{
17303
- .ty = array_fields_ty.toIntern(),
17304
- .storage = .{ .elems = union_field_vals },
17305
- } });
17254
+ const new_decl_val = (try pt.aggregateValue(array_fields_ty, union_field_vals)).toIntern();
17306
17255
const slice_ty = (try pt.ptrTypeSema(.{
17307
17256
.child = union_field_ty.toIntern(),
17308
17257
.flags = .{
@@ -17348,10 +17297,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17348
17297
return Air.internedToRef((try pt.internUnion(.{
17349
17298
.ty = type_info_ty.toIntern(),
17350
17299
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.@"union"))).toIntern(),
17351
- .val = try pt.intern(.{ .aggregate = .{
17352
- .ty = type_union_ty.toIntern(),
17353
- .storage = .{ .elems = &field_values },
17354
- } }),
17300
+ .val = (try pt.aggregateValue(type_union_ty, &field_values)).toIntern(),
17355
17301
})));
17356
17302
},
17357
17303
.@"struct" => {
@@ -17412,10 +17358,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17412
17358
// alignment: comptime_int,
17413
17359
(try pt.intValue(.comptime_int, Type.fromInterned(field_ty).abiAlignment(zcu).toByteUnits() orelse 0)).toIntern(),
17414
17360
};
17415
- struct_field_val.* = try pt.intern(.{ .aggregate = .{
17416
- .ty = struct_field_ty.toIntern(),
17417
- .storage = .{ .elems = &struct_field_fields },
17418
- } });
17361
+ struct_field_val.* = (try pt.aggregateValue(struct_field_ty, &struct_field_fields)).toIntern();
17419
17362
}
17420
17363
break :fv;
17421
17364
},
@@ -17482,10 +17425,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17482
17425
// alignment: comptime_int,
17483
17426
(try pt.intValue(.comptime_int, alignment.toByteUnits() orelse 0)).toIntern(),
17484
17427
};
17485
- field_val.* = try pt.intern(.{ .aggregate = .{
17486
- .ty = struct_field_ty.toIntern(),
17487
- .storage = .{ .elems = &struct_field_fields },
17488
- } });
17428
+ field_val.* = (try pt.aggregateValue(struct_field_ty, &struct_field_fields)).toIntern();
17489
17429
}
17490
17430
}
17491
17431
@@ -17494,10 +17434,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17494
17434
.len = struct_field_vals.len,
17495
17435
.child = struct_field_ty.toIntern(),
17496
17436
});
17497
- const new_decl_val = try pt.intern(.{ .aggregate = .{
17498
- .ty = array_fields_ty.toIntern(),
17499
- .storage = .{ .elems = struct_field_vals },
17500
- } });
17437
+ const new_decl_val = (try pt.aggregateValue(array_fields_ty, struct_field_vals)).toIntern();
17501
17438
const slice_ty = (try pt.ptrTypeSema(.{
17502
17439
.child = struct_field_ty.toIntern(),
17503
17440
.flags = .{
@@ -17549,10 +17486,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17549
17486
return Air.internedToRef((try pt.internUnion(.{
17550
17487
.ty = type_info_ty.toIntern(),
17551
17488
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.@"struct"))).toIntern(),
17552
- .val = try pt.intern(.{ .aggregate = .{
17553
- .ty = type_struct_ty.toIntern(),
17554
- .storage = .{ .elems = &field_values },
17555
- } }),
17489
+ .val = (try pt.aggregateValue(type_struct_ty, &field_values)).toIntern(),
17556
17490
})));
17557
17491
},
17558
17492
.@"opaque" => {
@@ -17568,10 +17502,7 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
17568
17502
return Air.internedToRef((try pt.internUnion(.{
17569
17503
.ty = type_info_ty.toIntern(),
17570
17504
.tag = (try pt.enumValueFieldIndex(type_info_tag_ty, @intFromEnum(std.builtin.TypeId.@"opaque"))).toIntern(),
17571
- .val = try pt.intern(.{ .aggregate = .{
17572
- .ty = type_opaque_ty.toIntern(),
17573
- .storage = .{ .elems = &field_values },
17574
- } }),
17505
+ .val = (try pt.aggregateValue(type_opaque_ty, &field_values)).toIntern(),
17575
17506
})));
17576
17507
},
17577
17508
.frame => return sema.failWithUseOfAsync(block, src),
@@ -17602,10 +17533,7 @@ fn typeInfoDecls(
17602
17533
.len = decl_vals.items.len,
17603
17534
.child = declaration_ty.toIntern(),
17604
17535
});
17605
- const new_decl_val = try pt.intern(.{ .aggregate = .{
17606
- .ty = array_decl_ty.toIntern(),
17607
- .storage = .{ .elems = decl_vals.items },
17608
- } });
17536
+ const new_decl_val = (try pt.aggregateValue(array_decl_ty, decl_vals.items)).toIntern();
17609
17537
const slice_ty = (try pt.ptrTypeSema(.{
17610
17538
.child = declaration_ty.toIntern(),
17611
17539
.flags = .{
@@ -17680,10 +17608,7 @@ fn typeInfoNamespaceDecls(
17680
17608
// name: [:0]const u8,
17681
17609
name_val,
17682
17610
};
17683
- try decl_vals.append(try pt.intern(.{ .aggregate = .{
17684
- .ty = declaration_ty.toIntern(),
17685
- .storage = .{ .elems = &fields },
17686
- } }));
17611
+ try decl_vals.append((try pt.aggregateValue(declaration_ty, &fields)).toIntern());
17687
17612
}
17688
17613
}
17689
17614
0 commit comments