[flang][OpenMP] Add diagnostic for ATOMIC WRITE with pointer to non-intrinsic type (#162364)
Fixes https://github.com/llvm/llvm-project/issues/161932
Added a check for non-intrinsic types in non-pointer assignments.
Added bool checkTypeOnPointer = true to both CheckAtomicVariable and
CheckAtomicType. All atomic assignment functions now pass
!IsPointerAssignment(...) to control the check. The pointer-to-non-intrinsic
check lives in CheckAtomicType, guarded by the checkTypeOnPointer flag.
The check now applies uniformly to all atomic operations while properly
excluding pointer assignments (=>).
---------
Co-authored-by: Krish Gupta <krishgupta@Krishs-MacBook-Air.local>