IDE オプション
Windows*:
[Data (データ)] > [Initialize stack variables to an unusual value (変数を異常な値に初期化する)]
Linux*:
なし
OS X*:
[Run-time (ランタイム)] > [Initialize stack variables to an unusual value (変数を異常な値に初期化する)]
説明
このオプションは、エラー検出を行いやすくするように、ローカル変数を異常な値に初期化します。通常、これらのローカル変数はアプリケーションで初期化します。
オプションは、スタックに割り当てられている初期化されていないローカル変数に、一般的に非常に大きな整数または無効なアドレスとして解釈される値を設定します。これらの変数を参照すると、ランタイムエラーが発生し、コーディング・エラーを検出するのに役立ちます。
このオプションは、デフォルトの最適化レベルを O2 から -O0 (Linux* および OS X*) または /Od (Windows*) に変更する -g オプション (Linux* および OS X*) と /Zi または /Z7 オプション (Windows*) を設定します。
これは、明示的に O オプションの設定を指定することで無効にできます。
O2 オプションと -ftrapuv オプション (Linux* および OS X*) または /Qtrapuv オプション (Windows*) を一緒に使用する場合は、浮動小数点演算のスペキュレーションがトラップされ、例外が発生しないように、-fp-speculation safe オプション (Linux* および OS X*) または /Qfp-speculation:safe オプション (Windows*) も指定すべきです。
-ftrapuv と /Qtrapuv を O コンパイラー・オプションと一緒に使用する場合の詳細は、インテル® ソフトウェア・ネットワークの記事「Don't optimize when using -ftrapuv for uninitializedvariable detection」 (英語) を参照してください。