[Bug fortran/35786] New: OpenMP Fortran PRIVATE on parameter gives error in gfc_finish_var_decl

J dot Hogg at rl dot ac dot uk gcc-bugzilla@gcc.gnu.org
Tue Apr 1 08:10:00 GMT 2008


Using the parameter ONE in the PRIVATE stanza of the parallel do in the below
code produces the shown error. This error only occurs if the subroutine is in a
module file.

user@host $ gfortran-4.3 -fopenmp -c test.f90
test.f90: In function ‘test’:
test.f90:8: internal compiler error: in gfc_finish_var_decl, at
fortran/trans-decl.c:510
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
user@host $ cat test.f90
module testmod
  implicit none

  real, parameter :: one = 1.0

contains

subroutine test
    integer i

    real, dimension(4) :: a = (/ 1, 2, 3, 4 /)
    real, dimension(4) :: b

    !$OMP PARALLEL DO PRIVATE(I, ONE)
    do i = 1,size(a)
      b(i) = one*a(i)
    end do
    !$OMP END PARALLEL DO

    print *, "b = ", b
end subroutine test
end module
user@host $ gfortran-4.3 -v
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: ../configure --program-suffix=-4.3
Thread model: posix
gcc version 4.3.0 (GCC)


-- 
           Summary: OpenMP Fortran PRIVATE on parameter gives error in
                    gfc_finish_var_decl
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: J dot Hogg at rl dot ac dot uk
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35786



More information about the Gcc-bugs mailing list