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