#pragma STDC cx_limited_range

説明

STDC cx_limited_range プラグマは、そのプラグマが制御するスコープ内では、複素数除算と絶対値は中間計算がオーバーフローしたり重要度を失わないような値のみを使用して呼び出されることをコンパイラーに命令します。このプラグマのデフォルト設定は off です。

構文

構文図を読む構文図をスキップする                                     .-off-----.
>>-#--pragma--STDC cx_limited_range--+-on------+---------------><
                                     '-default-'
 

限定範囲外の値を使用すると誤った結果が生成される可能性があります。ここで、「限定範囲」とは「明確なシンボリック定義」がオーバーフローしたり精度を欠かないことと定義されています。

プラグマは最初に現れた位置から、次の cx_limited_range プラグマを検出するか、変換単位の終わりまで有効となります。プラグマが複合ステートメント内に現れると (ネストされた複合ステートメントを含む)、最初に現れた位置から、別の cx_limited_range プラグマを検出するか、その複合ステートメントの終わりまで有効となります。