Sun Studio 12: Fortran ユーザーズガイド

3.4.120 -xcheck=keyword

実行時の特別な検査を生成します。

キーワードには次のいずれかを指定します。

キーワード

機能 

stkovf

副プログラムのエントリのスタックオーバーフローを実行時に検査します。スタックオーバーフローが検出されると、 SIGSEGV セグメント例外が発生します (SPARC のみ)。

no%stkovf

スタックオーバーフローの実行時の検査を無効にします (SPARC のみ)。

init_local

局所変数の特定の初期化を実行します。

コンパイラは局所変数を、代入される前にプログラムが使用すると算術例外を起こす可能性がある値に初期化します。ALLOCATE 文によって割り当てられたメモリーも同じように初期化されます。

モジュール変数、SAVE 変数、および COMMON ブロックの変数は初期化されません。

no%init_local

局所変数の初期化を無効にします。これはデフォルト値です。 

%all

実行時のすべての検査機能を有効にします。 

%none

実行時のすべての検査機能を無効にします。 

スタックオーバーフローは、特に、スタックに大きな配列が割り当てられるマルチスレッドアプリケーションで、近傍のスレッドスタックのデータを警告なしに破壊する可能性があります。スタックオーバーフローの可能性がある場合は、-xcheck=stkovf を使用してすべてのルーチンをコンパイルします。ただし、このフラグを使用してコンパイルしても、このフラグを使用せずにコンパイルしたルーチンでスタックオーバーフローが起こる可能性があるので、すべてのスタックオーバーフローの状況が検出されるわけではありません。