[flang] Warn about dangerous TRANSFER()
authorPeter Klausler <pklausler@nvidia.com>
Wed, 8 Feb 2023 01:45:23 +0000 (17:45 -0800)
committerPeter Klausler <pklausler@nvidia.com>
Mon, 13 Feb 2023 23:41:35 +0000 (15:41 -0800)
commit860ed6c078b4f04aa364ae3bc0648259e626ce4f
tree329b52a8b653d50e6f63e18cc0467837956c1ea5
parent776b7499ea813c06b02bcc01e4d73703233bb0bb
[flang] Warn about dangerous TRANSFER()

When the source or mold of a reference to the intrinsic function TRANSFER()
has a derived type with a direct component that contains a descriptor,
such as an allocatable or a pointer, emit a warning.  User programs
should never access descriptors directly.

Differential Revision: https://reviews.llvm.org/D143823
flang/lib/Evaluate/intrinsics.cpp
flang/lib/Semantics/check-call.cpp
flang/test/Semantics/transfer01.f90