aboutsummaryrefslogtreecommitdiff
path: root/src/stdlib/enums.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/stdlib/enums.c')
-rw-r--r--src/stdlib/enums.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/stdlib/enums.c b/src/stdlib/enums.c
index cc83b31e..ae9f440f 100644
--- a/src/stdlib/enums.c
+++ b/src/stdlib/enums.c
@@ -17,8 +17,10 @@
CONSTFUNC static ptrdiff_t value_offset(const TypeInfo_t *type) {
ptrdiff_t offset = sizeof(int32_t);
- for (int i = 0; i < type->EnumInfo.num_tags; i++)
- offset = MAX(offset, type->EnumInfo.tags[i].type->align);
+ for (int i = 0; i < type->EnumInfo.num_tags; i++) {
+ if (type->EnumInfo.tags[i].type)
+ offset = MAX(offset, type->EnumInfo.tags[i].type->align);
+ }
return offset;
}