diff options
Diffstat (limited to 'src/types.cpp')
| -rw-r--r-- | src/types.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/types.cpp b/src/types.cpp index 63647dcf3..e5f4f7957 100644 --- a/src/types.cpp +++ b/src/types.cpp @@ -1585,6 +1585,13 @@ bool type_has_nil(Type *t) { case Type_Union: return !t->Union.no_nil; case Type_Struct: + if (is_type_soa_struct(t)) { + switch (t->Struct.soa_kind) { + case StructSoa_Fixed: return false; + case StructSoa_Slice: return true; + case StructSoa_Dynamic: return true; + } + } return false; case Type_Opaque: return true; |