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

--- Comment #12 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> > Created attachment 36283 [details]
> > Patch for PR65045 that displays the problem
>
> Paul,
>
> Your patch for gcc/fortran/decl.c does not apply on trunk:
>
>  if (state == COMP_BLOCK)
>
> is now
>
>  while (state == COMP_BLOCK)

With the adjusted patch (IF replaced with WHILE) the ICE in PR65045 is gone and
gfortran retest cleanly, even if the error for the new test is

/opt/gcc/p_work/gcc/testsuite/gfortran.dg/pr65045.f90:7:6: Error: Symbol 'i' at
(1) is not appropriate for an expression
/opt/gcc/p_work/gcc/testsuite/gfortran.dg/pr65045.f90:9:59:

    else          ! { dg-error "Unexpected ELSE statement" }
                                                           1
Error: Unexpected ELSE statement at (1)
/opt/gcc/p_work/gcc/testsuite/gfortran.dg/pr65045.f90:10:6: Error: 'i' at (1)
is not a variable
/opt/gcc/p_work/gcc/testsuite/gfortran.dg/pr65045.f90:11:6:

    end if        ! { dg-error "Expecting END BLOCK statement" }
      1
Error: Expecting END BLOCK statement at (1)
/opt/gcc/p_work/gcc/testsuite/gfortran.dg/pr65045.f90:13:8:

 print*,i         ! { dg-error "not appropriate for an expression" }
        1
Error: Symbol 'i' at (1) is not appropriate for an expression

Reply via email to