------- Comment #8 from jakub at gcc dot gnu dot org 2010-05-12 15:01 ------- Seems dummy procedures are already in F95 and therefore something that OpenMP 3.0 should take into account. So probably for them it would be better to keep rejecting them in the clause lists and ensure they aren't rejected by the middle-end with default(none). If they can't be changed, I guess making them behave internally like predetermined shared by handling PARM_DECLs with POINTER_TYPE to FUNCTION_TYPE in gfc_omp_predetermined_sharing to return OMP_CLAUSE_DEFAULT_FIRSTPRIVATE.
As for procedure pointers, while perhaps Fortran doesn't call them variables, in the OpenMP terminology they IMHO behave like variables. They can be changed and thus some upcoming OpenMP standard version that covers Fortran 2003 will certainly need to allow them in the clauses - the user should have control over whether changing a procedure pointer in one thread affects other threads or not. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44036