More fixes for typedef @constinit change

This commit is contained in:
Christoffer Lerno
2026-02-14 01:37:53 +01:00
parent fac9054f1b
commit eb80776988
20 changed files with 199 additions and 176 deletions

View File

@@ -26,7 +26,7 @@ macro foo(a, #b = EMPTY_MACRO_SLOT)
*>
const EmptySlot EMPTY_MACRO_SLOT @builtin @deprecated("Use `#arg = ...` instead.") = null;
typedef EmptySlot = void*;
typedef EmptySlot @constinit = void*;
macro bool @is_empty_macro_slot(#arg) @const @builtin
@deprecated("Use `#arg = ...` to define an optional macro slot, and `$defined(#arg)` to detect whether the argument is set.")
=> $typeof(#arg) == EmptySlot;

View File

@@ -6,22 +6,22 @@ const FULL_LOG = env::COMPILER_SAFE_MODE || $feature(FULL_LOG);
typedef LogCategory = inline char;
typedef LogTag = char[12];
const LogCategory CATEGORY_APPLICATION = 0;
const LogCategory CATEGORY_SYSTEM = 1;
const LogCategory CATEGORY_KERNEL = 2;
const LogCategory CATEGORY_AUDIO = 3;
const LogCategory CATEGORY_VIDEO = 4;
const LogCategory CATEGORY_RENDER = 5;
const LogCategory CATEGORY_INPUT = 6;
const LogCategory CATEGORY_NETWORK = 7;
const LogCategory CATEGORY_SOCKET = 8;
const LogCategory CATEGORY_SECURITY = 9;
const LogCategory CATEGORY_TEST = 10;
const LogCategory CATEGORY_ERROR = 11;
const LogCategory CATEGORY_ASSERT = 12;
const LogCategory CATEGORY_CRASH = 13;
const LogCategory CATEGORY_STATS = 14;
const LogCategory CATEGORY_CUSTOM_START = 100;
const LogCategory CATEGORY_APPLICATION = (LogCategory)0;
const LogCategory CATEGORY_SYSTEM = (LogCategory)1;
const LogCategory CATEGORY_KERNEL = (LogCategory)2;
const LogCategory CATEGORY_AUDIO = (LogCategory)3;
const LogCategory CATEGORY_VIDEO = (LogCategory)4;
const LogCategory CATEGORY_RENDER = (LogCategory)5;
const LogCategory CATEGORY_INPUT = (LogCategory)6;
const LogCategory CATEGORY_NETWORK = (LogCategory)7;
const LogCategory CATEGORY_SOCKET = (LogCategory)8;
const LogCategory CATEGORY_SECURITY = (LogCategory)9;
const LogCategory CATEGORY_TEST = (LogCategory)10;
const LogCategory CATEGORY_ERROR = (LogCategory)11;
const LogCategory CATEGORY_ASSERT = (LogCategory)12;
const LogCategory CATEGORY_CRASH = (LogCategory)13;
const LogCategory CATEGORY_STATS = (LogCategory)14;
const LogCategory CATEGORY_CUSTOM_START = (LogCategory)100;
tlocal LogCategory default_category = CATEGORY_APPLICATION;
tlocal LogTag current_tag;

View File

@@ -2,16 +2,16 @@ module std::core::sanitizer::tsan;
typedef MutexFlags = inline CUInt;
const MutexFlags MUTEX_LINKER_INIT = 1 << 0;
const MutexFlags MUTEX_WRITE_REENTRANT = 1 << 1;
const MutexFlags MUTEX_READ_REENTRANT = 1 << 2;
const MutexFlags MUTEX_NOT_STATIC = 1 << 8;
const MutexFlags MUTEX_READ_LOCK = 1 << 3;
const MutexFlags MUTEX_TRY_LOCK = 1 << 4;
const MutexFlags MUTEX_TRY_LOCK_FAILED = 1 << 5;
const MutexFlags MUTEX_RECURSIVE_LOCK = 1 << 6;
const MutexFlags MUTEX_RECURSIVE_UNLOCK = 1 << 7;
const MutexFlags MUTEX_TRY_READ_LOCK = MUTEX_READ_LOCK | MUTEX_TRY_LOCK;
const MutexFlags MUTEX_LINKER_INIT = (MutexFlags)1 << 0;
const MutexFlags MUTEX_WRITE_REENTRANT = (MutexFlags)1 << 1;
const MutexFlags MUTEX_READ_REENTRANT = (MutexFlags)1 << 2;
const MutexFlags MUTEX_NOT_STATIC = (MutexFlags)1 << 8;
const MutexFlags MUTEX_READ_LOCK = (MutexFlags)1 << 3;
const MutexFlags MUTEX_TRY_LOCK = (MutexFlags)1 << 4;
const MutexFlags MUTEX_TRY_LOCK_FAILED = (MutexFlags)1 << 5;
const MutexFlags MUTEX_RECURSIVE_LOCK = (MutexFlags)1 << 6;
const MutexFlags MUTEX_RECURSIVE_UNLOCK = (MutexFlags)1 << 7;
const MutexFlags MUTEX_TRY_READ_LOCK = MUTEX_READ_LOCK | MUTEX_TRY_LOCK;
const MutexFlags MUTEX_TRY_READ_LOCK_FAILED = MUTEX_TRY_READ_LOCK | MUTEX_TRY_LOCK_FAILED;
macro void mutex_create(void* addr, MutexFlags flags) { $if env::THREAD_SANITIZER: __tsan_mutex_create(addr, flags); $endif }

View File

@@ -4,13 +4,13 @@ import std::core::mem::allocator;
typedef String @if(!$defined(String)) = inline char[];
typedef String @constinit @if(!$defined(String)) = inline char[];
<*
ZString is a pointer to a zero terminated array of chars.
Use ZString when you need to interop with C zero terminated strings.
*>
typedef ZString = inline char*;
typedef ZString @constinit = inline char*;
<*
WString is a pointer to a zero terminated array of Char16.