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

--- Comment #11 from kargls at comcast dot net ---
(In reply to Paul Thomas from comment #9)
> Created attachment 61467 [details]
> Test vehicle for my f2018 import patch
> 
> Hi Steve,
> 
> Note the sections marked WRINKLE. ifx considers an associate block to be
> executable code such that the import statement cannot appear there. With my
> patch, symbols in the associate target expression are not accepted, unless
> imported into the host scope.
> 

I just check F2023, and ifx is correct.  An import statement
is not allowed in an associate construct.  As an associate construct
does not have a declaration section.

R1102 associate‑construct is
      associate‑stmt
        <block>
      end‑associate‑stmt

as opposed to

R1107 block‑construct is
      block‑stmt
         [block‑specification‑part]
         <block>
      end‑block‑stmt

R1109 block‑specification‑part is
        [ use‑stmt ] ...
        [ import‑stmt ] ...
        [ declaration‑construct ]

Reply via email to