diff --git a/lang/cpp11/static_assert.md b/lang/cpp11/static_assert.md index 5d4a674b9..c1369a8b8 100644 --- a/lang/cpp11/static_assert.md +++ b/lang/cpp11/static_assert.md @@ -28,7 +28,7 @@ static_assert(定数式, 文字列リテラル); - この宣言は、名前空間スコープ、ブロックスコープ、メンバ宣言といった場所で記述できる - 定数式が真であると評価された場合は何も効果がない。定数式が偽であると評価された場合は、指定された文字列リテラルを含む診断メッセージがコンパイラによって問題報告される。ただし、基本ソース文字集合に含まれない文字集合は、診断メッセージに表示することはコンパイラに要求されない - `static_assert`宣言では、新たな型やオブジェクトは宣言しない。また、実行時にサイズや時間コストは発生しない -- (C++23以降 or CWG 2518が適用された環境): template文(もしくは適切な特殊化や[C++17 constexpr if 文](/lang/cpp17/if_constexpr.md)の中の文)が実際にインスタンス化されるまで、`static_assert`文の宣言は遅延される。 +- (CWG 2518が適用された環境): template文(もしくは適切な特殊化や[C++17 constexpr if 文](/lang/cpp17/if_constexpr.md)の中の文)が実際にインスタンス化されるまで、`static_assert`文の宣言は遅延される。 - [C++17 constexpr if 文](/lang/cpp17/if_constexpr.md)の解説を参照 ## 例 diff --git a/lang/cpp17/if_constexpr.md b/lang/cpp17/if_constexpr.md index 9b7f4953e..2b218c451 100644 --- a/lang/cpp17/if_constexpr.md +++ b/lang/cpp17/if_constexpr.md @@ -164,7 +164,7 @@ int main() } ``` -### (C++23以降 or CWG 2518が適用された環境) `static_assert`文に関する例外 +### (CWG 2518が適用された環境) `static_assert`文に関する例外 上に述べたように、`constexpr if`文の中の文は廃棄文においても、非依存名の検証を行う。このため特に`static_assert`文を使う時に直感的ではない挙動を示していた。