mirror of
https://github.com/ziglang/zig.git
synced 2026-02-12 20:37:54 +00:00
stage2: Array len field should be a usize not comptime_int
This commit is contained in:
parent
79b169c5a5
commit
797f4db227
@ -14948,7 +14948,7 @@ fn fieldVal(
|
||||
.Array => {
|
||||
if (mem.eql(u8, field_name, "len")) {
|
||||
return sema.addConstant(
|
||||
Type.comptime_int,
|
||||
Type.usize,
|
||||
try Value.Tag.int_u64.create(arena, inner_ty.arrayLen()),
|
||||
);
|
||||
} else {
|
||||
@ -14986,7 +14986,7 @@ fn fieldVal(
|
||||
} else if (ptr_info.pointee_type.zigTypeTag() == .Array) {
|
||||
if (mem.eql(u8, field_name, "len")) {
|
||||
return sema.addConstant(
|
||||
Type.comptime_int,
|
||||
Type.usize,
|
||||
try Value.Tag.int_u64.create(arena, ptr_info.pointee_type.arrayLen()),
|
||||
);
|
||||
} else {
|
||||
@ -15131,7 +15131,7 @@ fn fieldPtr(
|
||||
var anon_decl = try block.startAnonDecl(src);
|
||||
defer anon_decl.deinit();
|
||||
return sema.analyzeDeclRef(try anon_decl.finish(
|
||||
Type.initTag(.comptime_int),
|
||||
Type.usize,
|
||||
try Value.Tag.int_u64.create(anon_decl.arena(), inner_ty.arrayLen()),
|
||||
));
|
||||
} else {
|
||||
|
||||
@ -104,6 +104,7 @@ test "array len field" {
|
||||
comptime try expect(arr.len == 4);
|
||||
try expect(ptr.len == 4);
|
||||
comptime try expect(ptr.len == 4);
|
||||
try expect(@TypeOf(arr.len) == usize);
|
||||
}
|
||||
|
||||
test "array with sentinels" {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user