mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 12:01:16 +00:00
More fixes for typedef @constinit change
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 }
|
||||
|
||||
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user