I'm having problems with ifort version 14.0.1
I'm working on a hybrid (OpenMP+MPI) FORTRAN code. In that code the following pointer is declared and specified as threadprivate. However, when I include it in a OpenMP parallel region (default none), I get this compile error:
ftn -O3 -r8 -openmp cal_xy.F90
cal_xy.F90(750): error #6752: Since the OpenMP* DEFAULT(NONE) clause applies, the PRIVATE, SHARED, REDUCTION, FIRSTPRIVATE, or LASTPRIVATE attribute must be explicitly specified for every variable. [TERM_X]
If I add the variable to one of the data sharing clauses of the parallel region I get this error instead:
ftn -O3 -r8 -openmp calc_xy.F90
calc_xy.F90(739): error #7859: A SHARABLE or THREADPRIVATE entity is not permitted in a PRIVATE, FIRSTPRIVATE, LASTPRIVATE, SHARED or REDUCTION clause. [TERM_X]
It looks to be like the first error I get (the #6752 error) only occurs from the "select type()" command, is there any reason why this would be causing me problems with Intel's OpenMP implementation?
- Parallel Computing
I suppose you would need to present actual examples on the appropriate Intel Fortran forum (Windows or linux).
It may require help from a Fortran OpenMP expert if you are pushing the boundaries of f2003 OpenMP.