On Sat, Jun 07, 2014 at 10:25:23AM +0200, Andreas Schwab wrote: > Jakub Jelinek <ja...@redhat.com> writes: > > > I thought complex(kind=16) is normal double _Complex, isn't it? > > No, that would be complex(kind=8).
Ah, I've mixed that with complex*16, which apparently is the same thing as complex(kind=8). Fixed thusly, committed as obvious: 2014-06-09 Jakub Jelinek <ja...@redhat.com> * gfortran.dg/gomp/udr6.f90 (f1, f2, f3): Use complex(kind=8) instead of complex(kind=16). --- gcc/testsuite/gfortran.dg/gomp/udr6.f90.jj 2014-06-06 09:20:49.000000000 +0200 +++ gcc/testsuite/gfortran.dg/gomp/udr6.f90 2014-06-09 11:09:19.770485330 +0200 @@ -14,7 +14,7 @@ subroutine f1 !$omp declare reduction (+:integer(kind=8),integer(kind=1) & ! { dg-error "Redefinition of predefined" } !$omp & :omp_out = omp_out + omp_in) !$omp declare reduction (+:complex:omp_out = omp_out + omp_in) ! { dg-error "Redefinition of predefined" } -!$omp declare reduction (+:complex(kind=16):omp_out = omp_out + omp_in) ! { dg-error "Redefinition of predefined" } +!$omp declare reduction (+:complex(kind=8):omp_out = omp_out + omp_in) ! { dg-error "Redefinition of predefined" } interface operator(+) function addf1 (x, y) use udr6, only : dt @@ -38,7 +38,7 @@ subroutine f2 !$omp declare reduction (-:integer(kind=8),integer(kind=1) & ! { dg-error "Redefinition of predefined" } !$omp & :omp_out = omp_out + omp_in) !$omp declare reduction (-:complex:omp_out = omp_out + omp_in) ! { dg-error "Redefinition of predefined" } -!$omp declare reduction (-:complex(kind=16):omp_out = omp_out + omp_in) ! { dg-error "Redefinition of predefined" } +!$omp declare reduction (-:complex(kind=8):omp_out = omp_out + omp_in) ! { dg-error "Redefinition of predefined" } end subroutine f2 subroutine f3 use udr6, only : dt @@ -55,7 +55,7 @@ subroutine f3 !$omp declare reduction (*:integer(kind=8),integer(kind=1) & ! { dg-error "Redefinition of predefined" } !$omp & :omp_out = omp_out * omp_in) !$omp declare reduction (*:complex:omp_out = omp_out * omp_in) ! { dg-error "Redefinition of predefined" } -!$omp declare reduction (*:complex(kind=16):omp_out = omp_out * omp_in) ! { dg-error "Redefinition of predefined" } +!$omp declare reduction (*:complex(kind=8):omp_out = omp_out * omp_in) ! { dg-error "Redefinition of predefined" } end subroutine f3 subroutine f4 use udr6, only : dt Jakub