! PR fortran/77374
! { dg-do compile }

subroutine foo (a, b)
  integer :: a, b
!$omp atomic
  b = b + a
!$omp atomic
  z(1) = z(1) + 1	! { dg-error "must have the pointer attribute" }
end subroutine
subroutine bar (a, b)
  integer :: a, b
  interface
    function baz (i) result (res)
      integer, pointer :: res
      integer :: i
    end function
  end interface
!$omp atomic
  baz (i) = 1		! { dg-error "unexpected" }
end subroutine