https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79154
kargl at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P3 |P4 CC| |kargl at gcc dot gnu.org --- Comment #1 from kargl at gcc dot gnu.org --- (In reply to Chinoune from comment #0) > Created attachment 40550 [details] > the fortran program > > I tried to build the program (see attachment) with gfortran (5.4.0 > linux,cygwin 6.2.0,6.3.0 mingw 6.2.0 linux ...) > it gave me this error: > test_simd.f90:6:6: > > !$omp declare simd(add) > 1 > Error: OpenMP directives at (1) may not appear in PURE or ELEMENTAL > procedures AFAIK, GCC support OpenMP 4.0. On p. 26 of OpenMP 4.0 Standard, one finds Restrictions The following restriction applies to all OpenMP directives: · OpenMP directives may not appear in PURE or ELEMENTAL procedures. so you get the above error message. I'll note that OpenMP 4.5 Standard states Restrictions The following restriction applies to all OpenMP directives: Restrictions · OpenMP directives, except SIMD and declare target directives, may not appear in pure procedures. I'll further note that the GCC wiki page for OpenMP sugeests that no one is actively working on $.5 support.