diff --git a/flang/lib/Optimizer/Builder/Character.cpp b/flang/lib/Optimizer/Builder/Character.cpp index de4a5579620da..aa455e768a086 100644 --- a/flang/lib/Optimizer/Builder/Character.cpp +++ b/flang/lib/Optimizer/Builder/Character.cpp @@ -422,7 +422,7 @@ void fir::factory::CharacterExprHelper::createAssign( (lhsCstLen && rhsCstLen && *lhsCstLen == *rhsCstLen) || (rhs.getLen() == lhs.getLen()); - if (compileTimeSameLength && *lhsCstLen == 1) { + if (compileTimeSameLength && lhsCstLen && *lhsCstLen == 1) { createLengthOneAssign(lhs, rhs); return; }