hlfir.assign, in general, ends up calling the Assign runtime that asserts that the types of LHS and RHS match. In case of implicit logical<->integer conversions (allowed as an extension) the operands of hlfir.assign have non-matching types. This change makes sure that the lowering produces explicit type cast (either as a scalar fir.convert or as a hlfir.elemental producing array expression). Reviewed By: jeanPerier Differential Revision: https://reviews.llvm.org/D149765
185 KiB
185 KiB