_gfortran_caf_co_sum (The GNU Fortran Compiler)

#### 7.2.36 `_gfortran_caf_co_sum` — Collective summing reduction ¶

Synopsis:

  `void _gfortran_caf_co_sum (gfc_descriptor_t *a, int result_image, int *stat, char *errmsg, size_t errmsg_len)`

Description:

  Calculates for each array element of the variable a the sum of all values for that element in the current team; if result_image has the value 0, the result shall be stored on all images, otherwise, only on the specified image. This function operates on numeric values only.

Arguments:

  a | intent(inout) An array descriptor with the data to be processed. On the destination image(s) the result overwrites the old content.
  result_image | intent(in) The ID of the image to which the reduced value should be copied to; if zero, it has to be copied to all images.
  stat | intent(out) Stores the status STAT= and may be NULL.
  errmsg | intent(out) When an error occurs, this is set to an error message; may be NULL.
  errmsg_len | intent(in) the buffer size of errmsg

Notes:

  If result_image is nonzero, the data in the array descriptor a on all images except of the specified one become undefined; hence, the library may make use of this.