[flang-commits] [flang] [Flang] Add parsing and attribute registration for SIMPLE specifier (PR #161285)
Šárka Holendová via flang-commits
flang-commits at lists.llvm.org
Sat Jan 24 18:45:39 PST 2026
mlir-maiden wrote:
> You need tests that verify that cases in Fortran that require a PURE procedure also work with a SIMPLE procedure.
>
> You need to update the intrinsic procedures that used to be PURE and are now documented as being SIMPLE.
@klausler Thanks - I added tests in follow-up commit 374a093 to verify SIMPLE procedures work in PURE-required contexts.
I also started looking at updating intrinsics like mvbits to SIMPLE, but I wasn’t sure what the preferred approach is. I tried setting characteristics::Procedure::Attr::Simple for mvbits in Fortran::evaluate::Match(...) (intrinsics.cpp, in the call.isSubroutineCall branch where we already set PURE for IntrinsicClass::elementalSubroutine). The change builds, but -fdebug-dump-symbols still prints mvbits as ELEMENTAL/INTRINSIC/PURE with no SIMPLE.
Is Evaluate the intended place to plumb SIMPLE for intrinsics, or should SIMPLE live in Semantics symbol attrs / intrinsic procedure tables instead? Thank you
https://github.com/llvm/llvm-project/pull/161285
More information about the flang-commits
mailing list