diff options
| author | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2025-12-10 16:12:54 +0100 |
|---|---|---|
| committer | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2025-12-10 16:12:54 +0100 |
| commit | 503269b9bf896d4263c90e76ce65dbfc1fadb27e (patch) | |
| tree | 1a6e16aaff123fdc99b15ab8d00a9405fa01830c /src/types.cpp | |
| parent | 72d65603eb513d6788a21f02bc211b662c6102e8 (diff) | |
| parent | 8610acb48f2fd0c9d280c9a7973caf8db4143cf9 (diff) | |
Merge branch 'master' into pr/5882
Diffstat (limited to 'src/types.cpp')
| -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); |