module mod
integer i, j
contains
subroutine foo ()
  integer v
  !$omp atomic release
  i = i + 1
  !$omp atomic read
  v = j
end
end module
module m2
!$omp requires atomic_default_mem_order (acq_rel)	! OK
contains
subroutine bar
  !$omp atomic release
  i = i + 1
!$omp requires atomic_default_mem_order (acq_rel)	! { dg-error "must appear in the specification part of a program unit" }
  !$omp atomic read
  v = j
end subroutine
end module m2