aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2022-08-10 10:59:26 +0300
committerAndrew Kelley <andrew@ziglang.org>2022-08-10 15:18:09 -0400
commit40447b25e87ece9eee2d83d1c78c365ad7ab40f1 (patch)
treea5546ed8efe05ed9de5de88924238333b38c3edc /src
parent49a270b2038709a6a0c1f4de604696278769257b (diff)
downloadzig-40447b25e87ece9eee2d83d1c78c365ad7ab40f1.tar.gz
zig-40447b25e87ece9eee2d83d1c78c365ad7ab40f1.zip
Sema: fix expansion of repeated value
Closes #12386
Diffstat (limited to 'src')
-rw-r--r--src/Sema.zig5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Sema.zig b/src/Sema.zig
index acdce0e9b0..fc8a182508 100644
--- a/src/Sema.zig
+++ b/src/Sema.zig
@@ -23990,7 +23990,10 @@ fn beginComptimePtrMutation(
const array_len_including_sentinel =
try sema.usizeCast(block, src, parent.ty.arrayLenIncludingSentinel());
const elems = try arena.alloc(Value, array_len_including_sentinel);
- mem.set(Value, elems, repeated_val);
+ if (elems.len > 0) elems[0] = repeated_val;
+ for (elems[1..]) |*elem| {
+ elem.* = try repeated_val.copy(arena);
+ }
val_ptr.* = try Value.Tag.aggregate.create(arena, elems);