ATOMIC_AND — Atomic bitwise AND operation#
-
ATOMIC_AND(ATOM, VALUE)#
ATOMIC_AND(ATOM, VALUE)
atomically definesATOM
with the bitwise AND between the values ofATOM
andVALUE
. WhenSTAT
is present and the invocation was successful, it is assigned the value 0. If it is present and the invocation has failed, it is assigned a positive value; in particular, for a coindexedATOM
, if the remote image has stopped, it is assigned the value ofISO_FORTRAN_ENV
‘sSTAT_STOPPED_IMAGE
and if the remote image has failed, the valueSTAT_FAILED_IMAGE
.- Parameters:
ATOM – Scalar coarray or coindexed variable of integer type with
ATOMIC_INT_KIND
kind.VALUE – Scalar of the same type as
ATOM
. If the kind is different, the value is converted to the kind ofATOM
.STAT – (optional) Scalar default-kind integer variable.
- Standard:
TS 18508 or later
- Class:
Atomic subroutine
- Syntax:
CALL ATOMIC_AND (ATOM, VALUE [, STAT])
- Example:
program atomic use iso_fortran_env integer(atomic_int_kind) :: atom[*] call atomic_and (atom[1], int(b'10100011101')) end program atomic
- See also:
ATOMIC_DEFINE — Setting a variable atomically, ATOMIC_FETCH_AND — Atomic bitwise AND operation with prior fetch, ISO_FORTRAN_ENV, ATOMIC_ADD — Atomic ADD operation, ATOMIC_OR — Atomic bitwise OR operation, ATOMIC_XOR — Atomic bitwise OR operation