aboutsummaryrefslogtreecommitdiff
path: root/src/value.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/value.zig')
-rw-r--r--src/value.zig12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/value.zig b/src/value.zig
index d2de389de9..adfe4600f8 100644
--- a/src/value.zig
+++ b/src/value.zig
@@ -2539,6 +2539,15 @@ pub const Value = extern union {
return 1;
}
},
+ .decl_ref_mut => {
+ const decl_index = val.castTag(.decl_ref_mut).?.data.decl_index;
+ const decl = mod.declPtr(decl_index);
+ if (decl.ty.zigTypeTag() == .Array) {
+ return decl.ty.arrayLen();
+ } else {
+ return 1;
+ }
+ },
else => unreachable,
};
}
@@ -5067,6 +5076,9 @@ pub const Value = extern union {
ptr: Value,
len: Value,
},
+
+ pub const ptr_index = 0;
+ pub const len_index = 1;
};
pub const Ty = struct {