Author: Jay Foad
Date: 2023-03-23T15:33:09+01:00
New Revision: 2ecbe73ceedaef5c8cc8fc1f233286935aa4cb06

URL: 
https://github.com/llvm/llvm-project/commit/2ecbe73ceedaef5c8cc8fc1f233286935aa4cb06
DIFF: 
https://github.com/llvm/llvm-project/commit/2ecbe73ceedaef5c8cc8fc1f233286935aa4cb06.diff

LOG: [flang] Fix dereference of std::optional with no value

Differential Revision: https://reviews.llvm.org/D142648

(cherry picked from commit 6772966dcdf5175c517832c1b2352b4fcd1d6b16)

Added: 
    

Modified: 
    flang/lib/Optimizer/Builder/Character.cpp

Removed: 
    


################################################################################
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;
   }


        
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to