aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorPeter Klausler <35819229+klausler@users.noreply.github.com>2024-07-11 13:12:00 -0700
committerGitHub <noreply@github.com>2024-07-11 13:12:00 -0700
commitd5285fef00f6c5a725a515118192dd117fc3c665 (patch)
tree5e79869fa45eb94bc18eb98dae7596a78228de16 /flang/lib/Frontend/CompilerInvocation.cpp
parent0b58f34c98e4715c3c920820d79e53e8d99c1b59 (diff)
downloadllvm-d5285fef00f6c5a725a515118192dd117fc3c665.zip
llvm-d5285fef00f6c5a725a515118192dd117fc3c665.tar.gz
llvm-d5285fef00f6c5a725a515118192dd117fc3c665.tar.bz2
[flang] Downgrade error message to a portability warning (#98368)
f18 current emits an error when an assignment is made to an array section with a vector subscript, and the array is finalized with a non-elemental final subroutine. Some other compilers emit this error because (I think) they want variables to only be finalized in place, not by a subroutine call involving copy-in & copy-out of the finalized elements. Since many other Fortran compilers can handle this case, and there's nothing in the standards to preclude it, let's downgrade this error message to a portability warning. This patch got complicated because the API for the WhyNotDefinable() utility routine was such that it would return a message only in error cases, and there was no provision for returning non-fatal messages. It now returns either nothing, a fatal message, or a non-fatal warning message, and all of its call sites have been modified to cope.
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions