Skip to content

Commit 539c8b6

Browse files
committed
Fix bug that was erroneously recomputing the length of the CHARACTER.
1 parent 9614c01 commit 539c8b6

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

flang/lib/Optimizer/Builder/FIRBuilder.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -905,8 +905,8 @@ mlir::Value fir::factory::genLenOfCharacter(
905905
auto eleTy = fir::applyPathToType(arrTy, path);
906906
if (!fir::hasDynamicSize(eleTy)) {
907907
if (auto charTy = eleTy.dyn_cast<fir::CharacterType>()) {
908-
auto len = builder.createIntegerConstant(loc, idxTy, charTy.getLen());
909-
return saturatedDiff(lower, len);
908+
// Use LEN from the type.
909+
return builder.createIntegerConstant(loc, idxTy, charTy.getLen());
910910
}
911911
// Do we need to support !fir.array<!fir.char<k,n>>?
912912
fir::emitFatalError(loc,

0 commit comments

Comments
 (0)