Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 7/13/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

ATOMIC_DEFINE

Atomic Intrinsic Subroutine (Generic): Defines a variable atomically.

CALL ATOMIC_DEFINE (atom, value [, stat])

atom

(Output) Must be a scalar coarray or coindexed object and of type integer with kind ATOMIC_INT_KIND or of type logical with kind ATOMIC_LOGICAL_KIND. If its kind is the same as that of value or its type is logical, it becomes defined with the value of value. Otherwise, it becomes defined with the value of INT (VALUE, ATOMIC_INT_KIND).

ATOMIC_INT_KIND and ATOMIC_LOGICAL_KIND are named constants in the intrinsic module ISO_FORTRAN_ENV.

value

(Input) Must be a scalar and of the same type as atom.

stat

(Output; optional) Must be a non-coindexed integer scalar with a decimal exponent range of at least four (KIND=2 or greater). The value assigned to stat is specified in Overview of Atomic Subroutines. If stat is not present and an error condition occurs, error termination is initiated.

Example

Consider the following:

CALL ATOMIC_DEFINE (N[9], 7) 

This causes N on image 9 to become defined with the value 7.