aboutsummaryrefslogtreecommitdiff
path: root/src/Sema
diff options
context:
space:
mode:
authorWill Lillis <wlillis@umass.edu>2024-07-16 12:42:13 -0400
committerGitHub <noreply@github.com>2024-07-16 16:42:13 +0000
commita9d544575d5bd2a939b09b8f088bee5d8ff7b0d9 (patch)
tree0b8f7a3dc25261d88ea412399104ca291060ec9f /src/Sema
parent9356cb1475606a7afd2e722af60f87ce2b39f9f8 (diff)
downloadzig-a9d544575d5bd2a939b09b8f088bee5d8ff7b0d9.tar.gz
zig-a9d544575d5bd2a939b09b8f088bee5d8ff7b0d9.zip
Sema: add error note for failed coercions to optional types and error unions
Diffstat (limited to 'src/Sema')
-rw-r--r--src/Sema/comptime_ptr_access.zig5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Sema/comptime_ptr_access.zig b/src/Sema/comptime_ptr_access.zig
index 79e39cabfe..b7d660c426 100644
--- a/src/Sema/comptime_ptr_access.zig
+++ b/src/Sema/comptime_ptr_access.zig
@@ -321,6 +321,7 @@ fn loadComptimePtrInner(
zcu.getTarget(),
src,
src,
+ null,
)) {
// We already have a value which is IMC to the desired type.
return .{ .success = base_val };
@@ -353,6 +354,7 @@ fn loadComptimePtrInner(
zcu.getTarget(),
src,
src,
+ null,
)) {
// Changing the length of an array.
const skip_base: u64 = extra_base_index + if (load_ty.zigTypeTag(zcu) == .Array) skip: {
@@ -721,6 +723,7 @@ fn prepareComptimePtrStore(
zcu.getTarget(),
src,
src,
+ null,
)) {
// The base strategy already gets us a value which the desired type is IMC to.
return base_strat;
@@ -753,7 +756,7 @@ fn prepareComptimePtrStore(
else => unreachable,
};
const val_one_ty, const val_count = base_val.typeOf(zcu).arrayBase(zcu);
- if (.ok != try sema.coerceInMemoryAllowed(block, val_one_ty, store_one_ty, true, zcu.getTarget(), src, src)) {
+ if (.ok != try sema.coerceInMemoryAllowed(block, val_one_ty, store_one_ty, true, zcu.getTarget(), src, src, null)) {
break :restructure_array;
}
if (base_elem_offset + extra_base_index + store_count > val_count) return .{ .out_of_bounds = oob_ty };