[flang] Fix crash in folding TRANSFER() with MOLD=substring
authorPeter Klausler <pklausler@nvidia.com>
Thu, 2 Mar 2023 00:08:43 +0000 (16:08 -0800)
committerPeter Klausler <pklausler@nvidia.com>
Fri, 10 Mar 2023 16:40:01 +0000 (08:40 -0800)
commite6be8da14e9287455fe3e162c563ec231771d117
treeccdf22bcc58e726d751540df686189ee43abe696
parented8d75ef26191807559595dec63ca8ffce177aaf
[flang] Fix crash in folding TRANSFER() with MOLD=substring

When a substring appears as the MOLD= argument to TRANSFER(),
it's possible for the compiler to assert if it can't figure
out a constant length for the substring.  Fix.

Differential Revision: https://reviews.llvm.org/D145740
flang/include/flang/Evaluate/initial-image.h
flang/include/flang/Evaluate/type.h
flang/lib/Evaluate/fold.cpp
flang/lib/Evaluate/initial-image.cpp
flang/lib/Evaluate/type.cpp
flang/lib/Semantics/data-to-inits.cpp
flang/test/Evaluate/fold-transfer.f90