2014-10-24 Tobias Burnus <burnus@net-b.de>
commite39efcefc5fba7c339ea9dca6bcfa103b5adfbea
authorburnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Oct 2014 20:52:41 +0000 (24 20:52 +0000)
committerburnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Oct 2014 20:52:41 +0000 (24 20:52 +0000)
tree18bad83bfccb41a662f817065b9b6a8b1752b346
parent561cac01b0b97b21b3026d7e2fc80256fc4434fa
2014-10-24  Tobias Burnus  <burnus@net-b.de>

gcc/fortran
        * check.c (check_co_collective): Reject coindexed A args.
        (gfc_check_co_reduce): Add OPERATOR checks.
        * gfortran.texi (_gfortran_caf_co_broadcast,
        * _gfortran_caf_co_max,
        _gfortran_caf_co_min, _gfortran_caf_co_sum,
        _gfortran_caf_co_reduce): Add ABI documentation.
        * intrinsic.texi (CO_REDUCE): Document intrinsic.
        (DPROD): Returns double not single precision.
        * trans-decl.c (gfor_fndecl_co_reduce): New global var.
        (gfc_build_builtin_function_decls): Init it.
        * trans.h (gfor_fndecl_co_reduce): Declare it.
        * trans-intrinsic.c (conv_co_collective,
        gfc_conv_intrinsic_subroutine): Handle CO_REDUCE.

gcc/testsuite/
        * gfortran.dg/coarray_collectives_9.f90: Remove dg-error.
        * gfortran.dg/coarray_collectives_13.f90: New.
        * gfortran.dg/coarray_collectives_14.f90: New.
        * gfortran.dg/coarray_collectives_15.f90: New.
        * gfortran.dg/coarray_collectives_16.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216678 138bc75d-0d04-0410-961f-82ee72b054a4
14 files changed:
gcc/fortran/ChangeLog
gcc/fortran/check.c
gcc/fortran/gfortran.texi
gcc/fortran/intrinsic.texi
gcc/fortran/libgfortran.h
gcc/fortran/trans-decl.c
gcc/fortran/trans-intrinsic.c
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/coarray_collectives_13.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/coarray_collectives_14.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/coarray_collectives_15.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/coarray_collectives_16.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/coarray_collectives_9.f90