diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2025-12-09 12:47:59 +0000 |
|---|---|---|
| committer | gingerBill <gingerBill@users.noreply.github.com> | 2025-12-09 12:47:59 +0000 |
| commit | a3f189e8969221899ffef8a58e4f5068bf33d092 (patch) | |
| tree | 9403391af1fbfbf610b54df68013dac0f9750042 /src | |
| parent | 79ef9f0a434225102cdac338372968f282fbc2a3 (diff) | |
| parent | c0e4d2ea0513189f526ca777ecb0216180b3798f (diff) | |
Merge branch 'master' of https://github.com/odin-lang/Odin
Diffstat (limited to 'src')
| -rw-r--r-- | src/types.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/types.cpp b/src/types.cpp index eb20b8edf..18e3b56ac 100644 --- a/src/types.cpp +++ b/src/types.cpp @@ -4278,6 +4278,9 @@ gb_internal i64 *type_set_offsets_of(Slice<Entity *> const &fields, bool is_pack gb_internal bool type_set_offsets(Type *t) { t = base_type(t); if (t->kind == Type_Struct) { + if (t->Struct.are_offsets_being_processed.load()) { + return true; + } MUTEX_GUARD(&t->Struct.offset_mutex); if (!t->Struct.are_offsets_set) { t->Struct.are_offsets_being_processed.store(true); |