https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115301

            Bug ID: 115301
           Summary: [OpenMP] Fix handling spaces in OpenMP directives –
                    optional in F90, deprecated in F
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Keywords: diagnostic, openmp, rejects-valid
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: burnus at gcc dot gnu.org
  Target Milestone: ---

OpenMP permits in free-form Fortran:

"One or more blanks or horizontal tabs are optional to separate adjacent
keywords in directive-names unless otherwise specified."

and gives as example:

   !$omp paralleldo shared(a,b,c)

GCC currently requires a space between 'parallel' and 'do'.  (While the wording
suggests that the space between 'do' and 'shared' is mandatory).

→ Rejects valid issue.

Note: ifort, flang, xlf, ... do handle this syntax.

* * *

TR13 likely contains the following two changes (OpenMP Spec Issue #3871):

[Free form]
* The above use is deprecated, requiring a space between the directive names
(i.e 'parallel do' not 'paralleldo').

→ Add -Wdeprecated warning


[Fixed form]
* There are planned changes for the white-space handling, deprecating the
current usage.

→ Eventually add a -Wdeprecated warning

Reply via email to