This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Patch, Fortran] Add CO_BROADCAST
- From: Dominique d'Humières <dominiq at lps dot ens dot fr>
- To: Tobias Burnus <tobias dot burnus at physik dot fu-berlin dot de>
- Cc: gcc-patches at gcc dot gnu dot org, fortran at gcc dot gnu dot org, "Dominique d'Humieres" <dominiq at lps dot ens dot fr>
- Date: Tue, 30 Sep 2014 12:59:16 +0200
- Subject: Re: [Patch, Fortran] Add CO_BROADCAST
- Authentication-results: sourceware.org; auth=none
- References: <20140927110702 dot 59342100 at mailhost dot lps dot ens dot fr> <20140929081704 dot GA11532 at physik dot fu-berlin dot de> <20140929143157 dot GA16063 at physik dot fu-berlin dot de> <0E770C34-F9DA-4DB4-A9A4-FB1C073C8F56 at lps dot ens dot fr>
This is what I have committed as r215715:
Index: gcc/testsuite/ChangeLog
===================================================================
--- gcc/testsuite/ChangeLog (revision 215714)
+++ gcc/testsuite/ChangeLog (working copy)
@@ -1,3 +1,7 @@
+2014-30-09 Dominique d'Humieres <dominiq@lps.ens.fr>
+
+ * gfortran.dg/coarray_collectives_9.f90: Fix some dg-error.
+
2014-09-30 Jakub Jelinek <jakub@redhat.com>
PR inline-asm/63282
Index: gcc/testsuite/gfortran.dg/coarray_collectives_9.f90
===================================================================
--- gcc/testsuite/gfortran.dg/coarray_collectives_9.f90 (revision 215714)
+++ gcc/testsuite/gfortran.dg/coarray_collectives_9.f90 (working copy)
@@ -1,5 +1,5 @@
! { dg-do compile }
-! { dg-options "-fcoarray=single" }
+! { dg-options "-fcoarray=single -fmax-errors=40" }
!
!
! CO_BROADCAST/CO_REDUCE
@@ -29,7 +29,7 @@
call co_reduce("abc") ! { dg-error "Missing actual argument 'operator' in call to 'co_reduce'" }
call co_broadcast(1, source_image=1) ! { dg-error "'a' argument of 'co_broadcast' intrinsic at .1. must be a variable" }
call co_reduce(a=1, operator=red_f) ! { dg-error "'a' argument of 'co_reduce' intrinsic at .1. must be a variable" }
- call co_reduce(a=val, operator=red_f2) ! { dg-error "OPERATOR argument at (1) must be a PURE function" }
+ call co_reduce(a=val, operator=red_f2) ! { dg-error "OPERATOR argument at \\(1\\) must be a PURE function" }
call co_broadcast(val, source_image=[1,2]) ! { dg-error "must be a scalar" }
call co_broadcast(val, source_image=1.0) ! { dg-error "must be INTEGER" }
@@ -49,8 +49,8 @@
call co_reduce(val, red_f, stat=[1,2]) ! { dg-error "must be a scalar" }
call co_reduce(val, red_f, stat=1.0) ! { dg-error "must be INTEGER" }
call co_reduce(val, red_f, stat=1) ! { dg-error "must be a variable" }
- call co_reduce(val, red_f, stat=i, result_image=1) ! OK
- call co_reduce(val, red_f, stat=i, errmsg=errmsg, result_image=1) ! OK
+ call co_reduce(val, red_f, stat=i, result_image=1) ! { dg-error "CO_REDUCE at \\(1\\) is not yet implemented" }
+ call co_reduce(val, red_f, stat=i, errmsg=errmsg, result_image=1) ! { dg-error "CO_REDUCE at \\(1\\) is not yet implemented" }
call co_reduce(val, red_f, stat=i, errmsg=[errmsg], result_image=1) ! { dg-error "must be a scalar" }
call co_reduce(val, red_f, stat=i, errmsg=5, result_image=1) ! { dg-error "must be CHARACTER" }
call co_reduce(val, red_f, errmsg="abc") ! { dg-error "must be a variable" }
@@ -57,6 +57,6 @@
call co_reduce(val, red_f, stat=i8) ! { dg-error "The stat= argument at .1. must be a kind=4 integer variable" }
call co_reduce(val, red_f, errmsg=msg4) ! { dg-error "The errmsg= argument at .1. must be a default-kind character variable" }
- call co_broadcasr(vec(idx), 1) ! { dg-error "Argument 'A' with INTENT\\(INOUT\\) at .1. of the intrinsic subroutine co_sum shall not have a vector subscript" }
- call co_reduce(vec([1,3,2]), red_f) ! { dg-error "Argument 'A' with INTENT\\(INOUT\\) at .1. of the intrinsic subroutine co_min shall not have a vector subscript" }
+ call co_broadcast(vec(idx), 1) ! { dg-error "Argument 'A' with INTENT\\(INOUT\\) at .1. of the intrinsic subroutine co_broadcast shall not have a vector subscript" }
+ call co_reduce(vec([1,3,2]), red_f) ! { dg-error "Argument 'A' with INTENT\\(INOUT\\) at .1. of the intrinsic subroutine co_reduce shall not have a vector subscript" }
end program test
Dominique