|
Document of c-modernization-kit (util) 1.0.0
|
コンパイラ検出および抽象化マクロのヘッダーファイル。 More...
Go to the source code of this file.
Macros | |
| #define | COMPILER_MSVC |
| MSVC コンパイラの場合に定義されます。 | |
| #define | COMPILER_CLANG |
| Clang コンパイラの場合に定義されます。 | |
| #define | COMPILER_GCC |
| GCC コンパイラの場合に定義されます。 | |
| #define | COMPILER_UNKNOWN |
| 未知のコンパイラの場合に定義されます。 | |
| #define | COMPILER_NAME "name" |
| コンパイラ名の文字列 ("MSVC", "Clang", "GCC", "Unknown")。 | |
| #define | COMPILER_VERSION 0 |
| コンパイラバージョンの数値。 | |
| #define | FORCE_INLINE |
| インライン展開を強制します。コンパイラに応じた属性に展開されます。 | |
| #define | NO_INLINE |
| インライン展開を抑制します。コンパイラに応じた属性に展開されます。 | |
コンパイラ検出および抽象化マクロのヘッダーファイル。
コンパイラの種類とバージョンを検出し、統一的なマクロを定義します。
また、コンパイラ固有のインライン制御属性を抽象化します。
検出されたコンパイラに応じて、以下のマクロを定義します。
| コンパイラ | 識別マクロ | COMPILER_NAME | COMPILER_VERSION の形式 |
|---|---|---|---|
| MSVC | COMPILER_MSVC | "MSVC" | _MSC_VER の値 (例: 1943) |
| Clang | COMPILER_CLANG | "Clang" | major * 10000 + minor * 100 + patch |
| GCC | COMPILER_GCC | "GCC" | major * 10000 + minor * 100 + patch |
| その他 | COMPILER_UNKNOWN | "Unknown" | 0 |
コンパイラごとに異なるインライン強制・抑制の構文を、統一的なマクロで提供します。
| マクロ名 | MSVC | GCC/Clang | その他 |
|---|---|---|---|
| FORCE_INLINE | __forceinline | inline attribute((always_inline)) | inline |
| NO_INLINE | __declspec(noinline) | attribute((noinline)) | (空) |
Definition in file compiler.h.
| #define COMPILER_MSVC |
MSVC コンパイラの場合に定義されます。
Definition at line 57 of file compiler.h.
| #define COMPILER_CLANG |
Clang コンパイラの場合に定義されます。
Definition at line 58 of file compiler.h.
| #define COMPILER_GCC |
GCC コンパイラの場合に定義されます。
Definition at line 59 of file compiler.h.
| #define COMPILER_UNKNOWN |
未知のコンパイラの場合に定義されます。
Definition at line 60 of file compiler.h.
| #define COMPILER_NAME "name" |
コンパイラ名の文字列 ("MSVC", "Clang", "GCC", "Unknown")。
Definition at line 61 of file compiler.h.
| #define COMPILER_VERSION 0 |
コンパイラバージョンの数値。
Definition at line 62 of file compiler.h.
| #define FORCE_INLINE |
インライン展開を強制します。コンパイラに応じた属性に展開されます。
Definition at line 84 of file compiler.h.
| #define NO_INLINE |
インライン展開を抑制します。コンパイラに応じた属性に展開されます。
Definition at line 85 of file compiler.h.