authorgravatar for tw19881113@gmail.comTw <tw19881113@gmail.com> 2023-11-25 19:39:37+08:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2023-11-25 11:39:37+00:00
log2fefc0b5c7618012916e75e3058b381cf48f0ebb
tree186bcc9b9990924a82ffb6ec7ac7c3bdd2b58439
parent648f592db10d3354dcf7e36264291dd82f4d0e3a
signaturebadge-question-mark Signed by PGP key 4AEE18F83AFDEB23

Zir: add missing extra index for linksection_or_addspace

Closes #18052 Closes #18104 Signed-off-by: Tw <tw19881113@gmail.com>

3 files changed, 16 insertions(+), 2 deletions(-)

src/Zir.zig+3-2
......@@ -3416,8 +3416,9 @@ pub const DeclIterator = struct {
34163416 it.extra_index += 5; // src_hash(4) + line(1)
34173417 const name = it.zir.nullTerminatedString(it.zir.extra[it.extra_index]);
34183418 it.extra_index += 3; // name(1) + value(1) + doc_comment(1)
3419 it.extra_index += @as(u1, @truncate(flags >> 2));
3420 it.extra_index += @as(u1, @truncate(flags >> 3));
3419 it.extra_index += @as(u1, @truncate(flags >> 2)); // align
3420 it.extra_index += @as(u1, @truncate(flags >> 3)); // link_section
3421 it.extra_index += @as(u1, @truncate(flags >> 3)); // address_space
34213422
34223423 return Item{
34233424 .sub_index = sub_index,
test/behavior.zig+1
......@@ -228,6 +228,7 @@ test {
228228 _ = @import("behavior/type.zig");
229229 _ = @import("behavior/type_info.zig");
230230 _ = @import("behavior/type_info_only_pub_decls.zig");
231 _ = @import("behavior/type_info_mul_linksection_addrspace_decls.zig");
231232 _ = @import("behavior/typename.zig");
232233 _ = @import("behavior/undefined.zig");
233234 _ = @import("behavior/underscore.zig");
test/behavior/type_info_mul_linksection_addrspace_decls.zig created+12
......@@ -0,0 +1,12 @@
1const std = @import("std");
2const expect = std.testing.expect;
3
4pub const a linksection("sec_a") = 0;
5pub const b linksection("sec_b") = 0;
6pub const c addrspace("space_c") = 0;
7pub const d addrspace("space_d") = 0;
8
9test {
10 const decls = @typeInfo(@This()).Struct.decls;
11 try expect(decls.len == 4);
12}