[flang-commits] [flang] [Flang] Add partial support for lowering procedure pointer assignment. (PR #70461)

Daniel Chen via flang-commits flang-commits at lists.llvm.org
Mon Nov 13 19:25:54 PST 2023


================
@@ -1158,6 +1181,7 @@ genUserCall(Fortran::lower::PreparedActualArguments &loweredActuals,
     case PassBy::CharBoxValueAttribute:
     case PassBy::Box:
     case PassBy::BaseAddress:
+    case PassBy::BoxProcRef:
----------------
DanielCChen wrote:

With the latest update, it generates:
```
    %0 = fir.alloca !fir.boxproc<() -> ()>
    %1 = fir.zero_bits () -> ()
    %2 = fir.emboxproc %1 : (() -> ()) -> !fir.boxproc<() -> ()>
    fir.store %2 to %0 : !fir.ref<!fir.boxproc<() -> ()>>
    fir.call @_QPtest(%0) fastmath<contract> : (!fir.ref<!fir.boxproc<() -> ()>>) -> ()
```

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


More information about the flang-commits mailing list