OpenMP* 解析

コンパイラーは、OpenMP API 2.0 と 2.5 のいくつかの制限をチェックします。スタティックの検証機能が有効な場合、コンパイラーでは OpenMP API の制限に対して、次の項目を含む追加の確認を行います。

例: OpenMP 宣言子の誤った使用

gafort.f90 ファイルには、次のコードが含まれています。

310    !$OMP PARALLEL DO ORDERED

311    !create an array of locks

312    !$     DO i = 1,indmax

313    !$        CALL omp_init_lock(lck(i))

314    !$     ENDDO

315    !$OMP END PARALLEL DO

並列領域には ORDERED 節がありますが、対応する OpenMP の ORDERED 宣言子はありません。スタティックの検証機能で次のメッセージが発行されます。

gafort.f90(310): エラー #12204: [SV] ORDERED 句は ORDERED DO ではない構文のダイナミック・エクステントで使用されています。