[flang-commits] [flang] [flang] Fixed regression in copy-in/copy-out (PR #161259)

Eugene Epshteyn via flang-commits flang-commits at lists.llvm.org
Thu Nov 6 20:59:26 PST 2025


================
@@ -1296,10 +1296,14 @@ static PreparedDummyArgument preparePresentUserCallActualArgument(
     Fortran::evaluate::FoldingContext &foldingContext{
         callContext.converter.getFoldingContext()};
 
-    bool suggestCopyIn = Fortran::evaluate::MayNeedCopy(
-        arg.entity, arg.characteristics, foldingContext, /*forCopyOut=*/false);
-    bool suggestCopyOut = Fortran::evaluate::MayNeedCopy(
-        arg.entity, arg.characteristics, foldingContext, /*forCopyOut=*/true);
+    bool suggestCopyIn = Fortran::evaluate::ActualArgNeedsCopy(
+                             arg.entity, arg.characteristics, foldingContext,
+                             /*forCopyOut=*/false)
+                             .value_or(false);
----------------
eugeneepshteyn wrote:

This results in 58 regressions in lowering tests, which likely means there are some "unknown" cases that should be "known false". I'll investigate.

https://github.com/llvm/llvm-project/pull/161259


More information about the flang-commits mailing list