並列構文内で参照され、暗黙に決まるか事前定義されたスコープを持たないスカラー変数を自動宣言する場合、コンパイラは、変数の使用を次の規則 PS1 - PS3 に対して順番に確認します。
PS1: 並列領域内で変数を使用しても、その領域を実行するチーム内でスレッドに関するデータ競合状態が発生しない場合、その変数のスコープは SHARED と宣言されます。
PS2: 並列領域を実行するすべてのスレッドで、変数が同じスレッドによる読み取りの前に常に書き込まれる場合、その変数のスコープは PRIVATE と宣言されます。変数が PRIVATE とスコープ宣言することが可能で、並列領域のあと、書き込みの前に読み取られ、構文が PARALLEL DO か PARALLEL SECTIONS のいずれかである場合、その変数のスコープは、LASTPRIVATE と宣言されます。
PS3: 変数がコンパイラの認識可能な縮約処理で使用されている場合、その変数のスコープは、その特定の型を持つ REDUCTION と宣言されます。