エラー出力 - __compiletime_assert()
概要
コンパイル時にエラーを表示するコードを挿入する
詳細
このマクロでは引数として以下の値を受け取る
- 実行時の状態を示す : condition
- エラーメッセージを示す : msg
- 実行する関数名のprefixを示す : prefix
- 実行する関数名のsuffixを示す : suffix
prefixとsuffixを文字列として連結したシンボルを__compiletime_error()にmsgを渡した関数として定義し、conditionが0の場合は定義された関数を実行し実行時にエラーを出力する
また、__compiletime_error_fallback()により__CHECKER__が有効な場合はコンパイル時にエラーを出力する