diff options
| author | Veikka Tuominen <git@vexu.eu> | 2022-08-10 10:59:26 +0300 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-08-10 15:18:09 -0400 |
| commit | 40447b25e87ece9eee2d83d1c78c365ad7ab40f1 (patch) | |
| tree | a5546ed8efe05ed9de5de88924238333b38c3edc /src | |
| parent | 49a270b2038709a6a0c1f4de604696278769257b (diff) | |
| download | zig-40447b25e87ece9eee2d83d1c78c365ad7ab40f1.tar.gz zig-40447b25e87ece9eee2d83d1c78c365ad7ab40f1.zip | |
Sema: fix expansion of repeated value
Closes #12386
Diffstat (limited to 'src')
| -rw-r--r-- | src/Sema.zig | 5 |
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); |
