mirror of
https://github.com/ziglang/zig.git
synced 2026-02-12 20:37:54 +00:00
Sema: remove unnecessary type resolution
This causes false positive "foo depends on itself" errors. Prior to some recent enhancements, this type resolution was needed, however, we now have a more sophisticated type resolution mechanism that fully resolves types for the backend, but only after the Decl is fully analyzed, avoiding dependency loops.
This commit is contained in:
parent
93e11b824a
commit
737ef3e81b
@ -18026,8 +18026,7 @@ fn coerce(
|
||||
const array_ty = inst_ty.childType();
|
||||
if (array_ty.zigTypeTag() != .Array) break :src_array_ptr;
|
||||
const len0 = array_ty.arrayLen() == 0;
|
||||
// We resolve here so that the backend has the layout of the elem type.
|
||||
const array_elem_type = try sema.resolveTypeFields(block, inst_src, array_ty.childType());
|
||||
const array_elem_type = array_ty.childType();
|
||||
const dest_is_mut = dest_info.mutable;
|
||||
if (inst_ty.isConstPtr() and dest_is_mut and !len0) break :src_array_ptr;
|
||||
if (inst_ty.isVolatilePtr() and !dest_info.@"volatile") break :src_array_ptr;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user