From 7416f72565c3b899da1c4914acb43ed92e574739 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Mon, 16 Jan 2023 15:12:34 +0000 Subject: [PATCH] Make static value atomic too --- src/llvm_backend.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp index bea659f2b..084c27635 100644 --- a/src/llvm_backend.cpp +++ b/src/llvm_backend.cpp @@ -467,10 +467,10 @@ gb_internal lbValue lb_map_get_proc_for_type(lbModule *m, Type *type) { GB_ASSERT(*found != nullptr); return {(*found)->value, (*found)->type}; } - static u32 proc_index = 0; + static std::atomic proc_index; char buf[32] = {}; - isize n = gb_snprintf(buf, 32, "__$map_get-%u", ++proc_index); + isize n = gb_snprintf(buf, 32, "__$map_get-%u", 1+proc_index.fetch_add(1)); char *str = gb_alloc_str_len(permanent_allocator(), buf, n-1); String proc_name = make_string_c(str);