The STDC cx_limited_range pragma instructs the compiler that within the scope it controls, complex division and absolute value are only invoked with values such that intermediate calculation will not overflow or lose significance. The default setting of the pragma is off.
.-off-----. >>-#--pragma--STDC cx_limited_range--+-on------+--------------->< '-default-'
Using values outside the limited range may generate wrong results, where the limited range is defined such that the "obvious symbolic definition" will not overflow or run out of precision.
The pragma is effective from its first occurrence until another cx_limited_range pragma is encountered, or until the end of the translation unit. When the pragma occurs inside a compound statement (including within a nested compound statement), it is effective from its first occurrence until another cx_limited_range pragma is encountered, or until the end of the compound statement.