From a0d4ef0acf50db06fdde8ff229d20d15afc7d402 Mon Sep 17 00:00:00 2001 From: mlugg Date: Wed, 31 May 2023 04:42:18 +0100 Subject: InternPool: add representation for value of empty enums and unions This is a bit odd, because this value doesn't actually exist: see #15909. This gets all the empty enum/union behavior tests passing. Also adds an assertion to `Sema.analyzeBodyInner` which would have helped figure out the issue here much more quickly. --- src/codegen.zig | 1 + 1 file changed, 1 insertion(+) (limited to 'src/codegen.zig') diff --git a/src/codegen.zig b/src/codegen.zig index 7fd432dceb..1470b94f1b 100644 --- a/src/codegen.zig +++ b/src/codegen.zig @@ -242,6 +242,7 @@ pub fn generateSymbol( .extern_func, .func, .enum_literal, + .empty_enum_value, => unreachable, // non-runtime values .int => { const abi_size = math.cast(usize, typed_value.ty.abiSize(mod)) orelse return error.Overflow; -- cgit v1.2.3