From 79462fa453210ada7405ba4b9fc8d14974ff9624 Mon Sep 17 00:00:00 2001 From: matteokeole Date: Tue, 18 Nov 2025 10:28:44 +0100 Subject: [PATCH 1/4] refactor: Don't include Windows.h ourselves --- Base/Base.hpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Base/Base.hpp b/Base/Base.hpp index 01c9797..20339a9 100644 --- a/Base/Base.hpp +++ b/Base/Base.hpp @@ -20,8 +20,4 @@ #include "Utilities.hpp" #include "Bit.hpp" #include "Types/sequence.hpp" -#include "Types/view.hpp" - -#if OPERATING_SYSTEM == OPERATING_SYSTEM_WINDOWS - #include -#endif \ No newline at end of file +#include "Types/view.hpp" \ No newline at end of file From 0393bf67a73fcda9d69f8b70c25a32d45ed393c0 Mon Sep 17 00:00:00 2001 From: matteokeole Date: Tue, 18 Nov 2025 10:29:10 +0100 Subject: [PATCH 2/4] feat: Use NDEBUG instead of user-defined macro --- Base/Macros.hpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Base/Macros.hpp b/Base/Macros.hpp index d8c0b52..0c93292 100644 --- a/Base/Macros.hpp +++ b/Base/Macros.hpp @@ -5,10 +5,13 @@ #define ABORT() std::abort() -// See https://stackoverflow.com/a/49079078. -#if BUILD_MODE == BUILD_MODE_DEBUG +#ifdef NDEBUG + #define ASSERT(expression) + #define BREAKPOINT() +#else #include + // See https://stackoverflow.com/a/49079078. #if COMPILER == COMPILER_CLANG #if __has_builtin(__builtin_debugtrap) #define BREAKPOINT() __builtin_debugtrap() @@ -24,7 +27,4 @@ #endif #define ASSERT(expression) assert(expression) -#else - #define ASSERT(expression) - #define BREAKPOINT() #endif \ No newline at end of file From 367dbcc7423f9183de862b6fc68a8d5de6cee2a0 Mon Sep 17 00:00:00 2001 From: matteokeole Date: Tue, 18 Nov 2025 10:30:16 +0100 Subject: [PATCH 3/4] refactor: Context cracking sections --- Base/Context.hpp | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Base/Context.hpp b/Base/Context.hpp index cd86e88..436ae88 100644 --- a/Base/Context.hpp +++ b/Base/Context.hpp @@ -11,28 +11,18 @@ #define STANDARD_CPP20 202002l #define STANDARD_CPP23 202302l -// See https://sourceforge.net/p/predef/wiki/Compilers. -#define COMPILER_OTHER 0 -#define COMPILER_CLANG 1 -#define COMPILER_GCC 2 -#define COMPILER_MSVC 3 - -// See https://sourceforge.net/p/predef/wiki/OperatingSystems. -#define OPERATING_SYSTEM_OTHER 0 -#define OPERATING_SYSTEM_LINUX 1 -#define OPERATING_SYSTEM_WINDOWS 2 - -// See https://sourceforge.net/p/predef/wiki/Architectures. -#define ARCHITECTURE_OTHER 0 -#define ARCHITECTURE_AMD64 1 -#define ARCHITECTURE_INTEL_X86 2 - #if defined(_MSVC_LANG) #define STANDARD _MSVC_LANG #elif #define STANDARD __cplusplus #endif +// See https://sourceforge.net/p/predef/wiki/Compilers. +#define COMPILER_OTHER 0 +#define COMPILER_CLANG 1 +#define COMPILER_GCC 2 +#define COMPILER_MSVC 3 + #if defined(__clang__) #define COMPILER COMPILER_CLANG #elif defined(__GNUC__) @@ -43,6 +33,11 @@ #define COMPILER COMPILER_OTHER #endif +// See https://sourceforge.net/p/predef/wiki/OperatingSystems. +#define OPERATING_SYSTEM_OTHER 0 +#define OPERATING_SYSTEM_LINUX 1 +#define OPERATING_SYSTEM_WINDOWS 2 + #if defined(__gnu_linux__) #define OPERATING_SYSTEM OPERATING_SYSTEM_LINUX #elif defined(_WIN16) || defined(_WIN32) || defined(_WIN64) || defined(__WIN32__) || defined(__TOS_WIN__) || defined(__WINDOWS__) @@ -51,6 +46,11 @@ #define OPERATING_SYSTEM OPERATING_SYSTEM_OTHER #endif +// See https://sourceforge.net/p/predef/wiki/Architectures. +#define ARCHITECTURE_OTHER 0 +#define ARCHITECTURE_AMD64 1 +#define ARCHITECTURE_INTEL_X86 2 + #if defined(__amd64) || defined(__amd64__) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64) #define ARCHITECTURE ARCHITECTURE_AMD64 #elif defined(i386) || defined(__i386) || defined(__i386__) || defined(__IA32__) || defined(_M_I86) || defined(_M_IX86) || defined(__X86__) || defined(_X86_) || defined(__THW_INTEL__) || defined(__I86__) || defined(__INTEL__) || defined(__386) From 5702cea9f6ddae9769f554e438ff46d3ceb0c507 Mon Sep 17 00:00:00 2001 From: matteokeole Date: Tue, 18 Nov 2025 10:31:34 +0100 Subject: [PATCH 4/4] refactor: Remove TODO that won't be implemented --- Base/Types/base_sequence.hpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/Base/Types/base_sequence.hpp b/Base/Types/base_sequence.hpp index 9d43ebe..f7b415d 100644 --- a/Base/Types/base_sequence.hpp +++ b/Base/Types/base_sequence.hpp @@ -73,14 +73,12 @@ namespace USER_NAMESPACE { } const T& operator[](uint64 index) const { - // TODO: Always allow 0? ASSERT(index < _count); return _data[index]; } T& operator[](uint64 index) { - // TODO: Always allow 0? ASSERT(index < _count); return _data[index];