Closed
Description
program o30_301
character(2) hi
!$omp atomic write
hi = 'hi'
!$omp end atomic
end program
Fails with not yet implemented: Unsupported atomic type
. The wording of the standard is that atomic operations should operate on "scalar variables of intrinsic type" (OpenMP 5.2 section 4.3.1.3).
In Fortran 2023, a scalar variable is defined (3.119) as "data entity that can be represented by a single value of the type and that is not an array". I think that means that a the character
variable in the above example is scalar and of intrinsic type.
gfortran and classic flang do not allow character variables in atomic types.