See also:
http://gcc.gnu.org/ml/fortran/2009-01/msg00308.html

Seemingly, a lot of the OpenMP-supporting compilers support THREADPRIVATE for
EQUIVALENCEd symbols; at least Intel's ifort, SUN's sunf95, Open64's openf95,
Pathscale's pathf95 and Portland's pgf95 compile the program listed at

gfortran rejects it with:
  Error: EQUIVALENCE attribute conflicts with THREADPRIVATE attribute

!-------------------------------------------------------------
c
      subroutine strainx(x,volo,v,lft,llt,volf,vlim)
c
c

      dimension x1(1), vx1(1)
      integer nlq
      parameter (nlq=544)
      integer nnlq,lq9,lq0,lq1
      common/newnlq/nnlq,lq9,lq0,lq1
      common/aux33loc/ix1(nlq),ix2(nlq),ix3(nlq),ix4(nlq),ix5(nlq),
     1             ix6(nlq),ix7(nlq),ix8(nlq),mxt(nlq)
c
      dimension x(3,*),v(3,*),volo(nlq),volf(*),vlim(*)
      dimension ixx(nlq,8),posn(nlq,8,3),posv(nlq,8,3)
      equivalence (ixx(1,1),ix1(1)),(posn(1,1,1),x1(1))
     &  ,(posv(1,1,1),vx1(1))
c
c   Gather xJ,yJ,zJ(J=1,8)
c$omp thread private (/aux33loc/)
      do node=1,8
      do i=lft,llt
      posn(i,node,1)=x(1,ixx(i,node))
      posn(i,node,2)=x(2,ixx(i,node))
      posn(i,node,3)=x(3,ixx(i,node))
      enddo
      enddo
c
      return
      end


-- 
           Summary: OpenMP extension:
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: openmp
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: burnus at gcc dot gnu dot org


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

Reply via email to