[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 10:33:24 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:

After I fixed an `assert` to allow `BoxProcRef`, the above test case is lowered to 
```
  func.func @_QQmain() {
    %0 = fir.zero_bits !fir.ref<none>
    %1 = fir.convert %0 : (!fir.ref<none>) -> !fir.ref<!fir.boxproc<() -> ()>>
    fir.call @_QPtest(%1) fastmath<contract> : (!fir.ref<!fir.boxproc<() -> ()>>) -> ()
    return
  }

```

Would this be good?

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


More information about the flang-commits mailing list