|
GMP 0.3.0
Generative Metaprogramming library for C++
|
Go to the source code of this file.
Macros | |
Platform Detection | |
Compile-time operating system detection macros. These macros expose the detected target platform as boolean constants and provide a human-readable platform name. | |
| #define | GMP_PLATFORM_WINDOWS |
Evaluate to 1 when compiling for Windows, otherwise 0. | |
| #define | GMP_PLATFORM_LINUX |
Evaluate to 1 when compiling for Linux, otherwise 0. | |
| #define | GMP_PLATFORM_MAC |
Evaluate to 1 when compiling for macOS, otherwise 0. | |
| #define | GMP_PLATFORM_IOS |
Evaluate to 1 when compiling for iOS, otherwise 0. | |
| #define | GMP_PLATFORM_ANDROID |
Evaluate to 1 when compiling for Android, otherwise 0. | |
| #define | GMP_PLATFORM_NAME |
| Expand to a string literal describing the detected target platform. | |
Compiler Detection | |
Compile-time compiler detection macros. These macros identify the active compiler and expose a numeric version and descriptive compiler name. | |
| #define | GMP_COMPILER_MSVC |
Evaluate to 1 when compiling with MSVC, otherwise 0. | |
| #define | GMP_COMPILER_GCC |
Evaluate to 1 when compiling with GCC, otherwise 0. | |
| #define | GMP_COMPILER_CLANG |
Evaluate to 1 when compiling with Clang, otherwise 0. | |
| #define | GMP_COMPILER_NAME |
| Expand to a string literal describing the detected compiler. | |
| #define | GMP_COMPILER_VERSION |
| Expand to a compiler-specific numeric version value. | |
Build Configuration Detection | |
Detect whether the current build is a debug or release build. | |
| #define | GMP_BUILD_DEBUG |
Evaluate to 1 for debug builds, otherwise 0. | |
| #define | GMP_BUILD_RELEASE |
Evaluate to 1 for release builds, otherwise 0. | |
| #define | GMP_BUILD_TYPE |
| Expand to a string literal describing the active build configuration. | |
Architecture Detection | |
Detect the target processor architecture at compile time. | |
| #define | GMP_ARCH_X64 |
Evaluate to 1 when targeting x64, otherwise 0. | |
| #define | GMP_ARCH_ARM64 |
Evaluate to 1 when targeting ARM64, otherwise 0. | |
| #define | GMP_ARCH_X86 |
Evaluate to 1 when targeting x86, otherwise 0. | |
| #define | GMP_ARCH_NAME |
| Expand to a string literal describing the detected architecture. | |
Preprocessor Capabilities | |
Describe the supported preprocessor mode and argument limits. | |
| #define | GMP_MAX_MACRO_ARGS |
| Maximum supported variadic macro arity for the active preprocessor mode. | |
| #define | GMP_PREPROCESSOR_TYPE |
| Expand to a string literal describing the detected preprocessor mode. | |
| #define | GMP_STANDARD_PREPROCESSOR |
Evaluate to 1 when the compiler provides a standard-conforming preprocessor. | |