diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-03-01 15:26:31 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-03-01 15:26:31 -0700 |
| commit | 8878f085dccaf9efe89a04b458205fddc215e095 (patch) | |
| tree | be49e3d222c1e58d4f962f155d24a197c8bd4778 /src/type.zig | |
| parent | f6aaab9406807305c2b48fcd742449c9e91f1851 (diff) | |
| download | zig-8878f085dccaf9efe89a04b458205fddc215e095.tar.gz zig-8878f085dccaf9efe89a04b458205fddc215e095.zip | |
Sema: correct implementation of comptimeOnly for tuples
This makes formatted printing work when mixing comptime and runtime
fields.
Diffstat (limited to 'src/type.zig')
| -rw-r--r-- | src/type.zig | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/type.zig b/src/type.zig index 40700f28af..90e79a8eed 100644 --- a/src/type.zig +++ b/src/type.zig @@ -4050,8 +4050,9 @@ pub const Type = extern union { .tuple => { const tuple = ty.castTag(.tuple).?.data; - for (tuple.types) |field_ty| { - if (field_ty.comptimeOnly()) return true; + for (tuple.types) |field_ty, i| { + const have_comptime_val = tuple.values[i].tag() != .unreachable_value; + if (!have_comptime_val and field_ty.comptimeOnly()) return true; } return false; }, |
