[flang-commits] [flang] [flang] Move whole allocatable assignment implicit conversion to lowering (PR #70317)
Pete Steinfeld via flang-commits
flang-commits at lists.llvm.org
Thu Oct 26 06:55:18 PDT 2023
================
@@ -427,6 +427,29 @@ std::pair<hlfir::Entity, mlir::Value>
createTempFromMold(mlir::Location loc, fir::FirOpBuilder &builder,
hlfir::Entity mold);
+hlfir::EntityWithAttributes convertCharacterKind(mlir::Location loc,
+ fir::FirOpBuilder &builder,
+ hlfir::Entity scalarChar,
+ int toKind);
+
+/// Materialize an implicit Fortran type conversion from \p source to \p toType.
+/// This is a no-op if the Fortran category and KIND of \p source are
+/// the same as the one in \p toType. This is also a no-op if \p toType is an
+/// unlimited polymorphic. For characters, this implies that a conversion is
+/// only inserted in case of KIND mismatch (and not in case of length mismatch),
+/// and that the resulting entity length is the same as the one from \p source.
+/// It is valid to call this helper if \p source is an array. If a conversion is
+/// inserted for arrays, a clean-up will be returned. If not conversion is
----------------
psteinfeld wrote:
"not conversion" should read "no conversion"
https://github.com/llvm/llvm-project/pull/70317
More information about the flang-commits
mailing list